76 lines
3.1 KiB
C#
76 lines
3.1 KiB
C#
using System.Windows.Controls;
|
|
|
|
using WPFluent.Gallery.Views;
|
|
using WPFluent.Gallery.Views.Pages;
|
|
using WPFluent.Gallery.Views.Pages.Collections;
|
|
using WPFluent.Gallery.Views.Pages.DesignGuidance;
|
|
using WPFluent.Gallery.Views.Pages.Navigation;
|
|
using WPFluent.Gallery.Views.Pages.Windows;
|
|
|
|
namespace WPFluent.Gallery.ViewModels.Windows;
|
|
|
|
public partial class MainWindowViewModel : ViewModel
|
|
{
|
|
[ObservableProperty]
|
|
private string applicationTitle = "WPF UI Gallery";
|
|
|
|
[ObservableProperty]
|
|
private ObservableCollection<object> menuItems =
|
|
[
|
|
new NavigationViewItem("Home", SymbolRegular.Home24, typeof(DashboardPage)),
|
|
new NavigationViewItem()
|
|
{
|
|
Content = "Design guidance",
|
|
Icon = new SymbolIcon { Symbol = SymbolRegular.DesignIdeas24 },
|
|
MenuItemsSource = new object[]
|
|
{
|
|
new NavigationViewItem("Typography", SymbolRegular.TextFont24, typeof(TypographyPage)),
|
|
new NavigationViewItem("Icons", SymbolRegular.Diversity24, typeof(IconsPage)),
|
|
new NavigationViewItem("Colors", SymbolRegular.Color24, typeof(ColorsPage)),
|
|
},
|
|
},
|
|
//new NavigationViewItem("All samples", SymbolRegular.List24, typeof(AllControlsPage)),
|
|
new NavigationViewItemSeparator(),
|
|
new NavigationViewItem("Basic Input", SymbolRegular.CheckboxChecked24, typeof(BasicInputPage)),
|
|
new NavigationViewItem
|
|
{
|
|
Content = "Collections",
|
|
Icon = new SymbolIcon { Symbol = SymbolRegular.Table24 },
|
|
TargetPageType = typeof(CollectionsPage),
|
|
},
|
|
new NavigationViewItem("Date & time", SymbolRegular.CalendarClock24, typeof(DateAndTimePage)),
|
|
new NavigationViewItem("Dialogs & flyouts", SymbolRegular.Chat24, typeof(DialogsAndFlyoutsPage)),
|
|
#if DEBUG
|
|
new NavigationViewItem("Layout", SymbolRegular.News24, typeof(LayoutPage)),
|
|
#endif
|
|
new NavigationViewItem
|
|
{
|
|
Content = "Media",
|
|
Icon = new SymbolIcon { Symbol = SymbolRegular.PlayCircle24 },
|
|
TargetPageType = typeof(MediaPage),
|
|
},
|
|
new NavigationViewItem("Navigation", SymbolRegular.Navigation24, typeof(NavigationPage)),
|
|
new NavigationViewItem(
|
|
"Status & info",
|
|
SymbolRegular.ChatBubblesQuestion24,
|
|
typeof(StatusAndInfoPage)
|
|
),
|
|
new NavigationViewItem("Text", SymbolRegular.DrawText24, typeof(TextPage)),
|
|
new NavigationViewItem("System", SymbolRegular.Desktop24, typeof(OpSystemPage)),
|
|
new NavigationViewItem("Windows", SymbolRegular.WindowApps24, typeof(WindowsPage)),
|
|
];
|
|
|
|
[ObservableProperty]
|
|
private ObservableCollection<object> footerMenuItems =
|
|
[
|
|
new NavigationViewItem("Settings", SymbolRegular.Settings24, typeof(SettingsPage)),
|
|
];
|
|
|
|
[ObservableProperty]
|
|
private ObservableCollection<WPFluent.Controls.MenuItem> trayMenuItems =
|
|
[
|
|
new WPFluent.Controls.MenuItem { Header = "Home", Tag = "tray_home" },
|
|
new WPFluent.Controls.MenuItem { Header = "Close", Tag = "tray_close" },
|
|
];
|
|
}
|