CourseProject1125/CourseProject1125/Views/MainWindow.axaml.cs

46 lines
1.1 KiB
C#

using System;
using Avalonia.Controls;
using CourseProject1125.ViewModels;
namespace CourseProject1125.Views;
public partial class MainWindow : Window
{
public MainWindow()
{
var viewModel = new MainWindowViewModel();
viewModel.OnLoginSuccess = (roleId) => NavigateByRole(roleId);
DataContext = viewModel;
InitializeComponent();
}
private void NavigateByRole(int roleId)
{
Window? nextWindow = null;
switch (roleId)
{
case 1:
nextWindow = new AdminWindow();
break;
case 2:
nextWindow = new LibrarianWindow();
break;
case 3:
nextWindow = new ReaderWindow();
break;
default:
if (DataContext is MainWindowViewModel vm)
{
vm.ErrorMessage = "Неизвестная роль пользователя.";
}
return;
}
if (nextWindow != null)
{
nextWindow.Show();
this.Close();
}
}
}