30 lines
894 B
C#
30 lines
894 B
C#
using AutoCat.ViewModels;
|
|
using Avalonia;
|
|
using Avalonia.Controls;
|
|
using Avalonia.Controls.ApplicationLifetimes;
|
|
using Microsoft.Extensions.DependencyInjection;
|
|
using Microsoft.Extensions.Hosting.Internal;
|
|
|
|
namespace AutoCat.Views;
|
|
|
|
public partial class AuthWindow : Window
|
|
{
|
|
public AuthWindow()
|
|
{
|
|
InitializeComponent();
|
|
|
|
if (DataContext is AuthWindowViewModel vm)
|
|
{
|
|
vm.ReplaceWithMainWindowEvent += (sender, args) =>
|
|
{
|
|
if (Application.Current is not App app) return;
|
|
if (app.ApplicationLifetime is not IClassicDesktopStyleApplicationLifetime desktop) return;
|
|
|
|
var mainWindow = app.AppHost.Services.GetRequiredService<MainWindow>();
|
|
mainWindow.Show();
|
|
desktop.MainWindow = mainWindow;
|
|
Close();
|
|
};
|
|
}
|
|
}
|
|
} |