feat: move to menu.

This commit is contained in:
rabbitism
2023-06-30 20:34:36 +08:00
parent 35582385ef
commit 518a825af3
24 changed files with 308 additions and 173 deletions

View File

@@ -1,6 +1,40 @@
namespace Ursa.Demo.ViewModels;

using CommunityToolkit.Mvvm.Messaging;
namespace Ursa.Demo.ViewModels;
public class MainWindowViewModel : ViewModelBase
{
public string Greeting => "Welcome to Avalonia!";
public MenuViewModel Menus { get; set; } = new MenuViewModel();
private object? _content;
public object? Content
{
get => _content;
set => SetProperty(ref _content, value);
}
public MainWindowViewModel()
{
WeakReferenceMessenger.Default.Register<MainWindowViewModel, string>(this, OnNavigation);
}
private void OnNavigation(MainWindowViewModel vm, string s)
{
Content = s switch
{
MenuKeys.MenuKeyBadge => new BadgeDemoViewModel(),
MenuKeys.MenuKeyBanner => new BannerDemoViewModel(),
MenuKeys.MenuKeyButtonGroup => new ButtonGroupDemoViewModel(),
MenuKeys.MenuKeyDivider => new DividerDemoViewModel(),
MenuKeys.MenuKeyIpBox => new IPv4BoxDemoViewModel(),
MenuKeys.MenuKeyLoading => new LoadingDemoViewModel(),
MenuKeys.MenuKeyNavigation => new NavigationMenuDemoViewModel(),
MenuKeys.MenuKeyPagination => new PaginationDemoViewModel(),
MenuKeys.MenuKeyTagInput => new TagInputDemoViewModel(),
MenuKeys.MenuKeyTimeline => new TimelineDemoViewModel(),
};
}
}