66 lines
1.8 KiB
C#
66 lines
1.8 KiB
C#
using Seyounth.Hyosung.UI.ViewModels.Windows;
|
|
using Wpf.Ui;
|
|
using Wpf.Ui.Appearance;
|
|
using Wpf.Ui.Controls;
|
|
|
|
namespace Seyounth.Hyosung.UI.Views.Windows
|
|
{
|
|
public partial class MainWindow : INavigationWindow
|
|
{
|
|
public MainWindowViewModel ViewModel { get; }
|
|
|
|
public MainWindow(
|
|
MainWindowViewModel viewModel,
|
|
IPageService pageService,
|
|
ISnackbarService snackbarService,
|
|
INavigationService navigationService
|
|
)
|
|
{
|
|
ViewModel = viewModel;
|
|
DataContext = this;
|
|
|
|
SystemThemeWatcher.Watch(this);
|
|
|
|
InitializeComponent();
|
|
SetPageService(pageService);
|
|
snackbarService.SetSnackbarPresenter(SnackbarPresenter);
|
|
navigationService.SetNavigationControl(RootNavigation);
|
|
}
|
|
|
|
#region INavigationWindow methods
|
|
|
|
public INavigationView GetNavigation() => RootNavigation;
|
|
|
|
public bool Navigate(Type pageType) => RootNavigation.Navigate(pageType);
|
|
|
|
public void SetPageService(IPageService pageService) => RootNavigation.SetPageService(pageService);
|
|
|
|
public void ShowWindow() => Show();
|
|
|
|
public void CloseWindow() => Close();
|
|
|
|
#endregion INavigationWindow methods
|
|
|
|
/// <summary>
|
|
/// Raises the closed event.
|
|
/// </summary>
|
|
protected override void OnClosed(EventArgs e)
|
|
{
|
|
base.OnClosed(e);
|
|
|
|
// Make sure that closing this window will begin the process of closing the application.
|
|
Application.Current.Shutdown();
|
|
}
|
|
|
|
INavigationView INavigationWindow.GetNavigation()
|
|
{
|
|
throw new NotImplementedException();
|
|
}
|
|
|
|
public void SetServiceProvider(IServiceProvider serviceProvider)
|
|
{
|
|
throw new NotImplementedException();
|
|
}
|
|
}
|
|
}
|