semesterWork/Presence.Desktop/App.axaml.cs
2024-12-13 08:47:52 +03:00

38 lines
1.1 KiB
C#

using Avalonia;
using Avalonia.Controls.ApplicationLifetimes;
using Avalonia.Markup.Xaml;
using Data.DAO;
using Microsoft.Extensions.DependencyInjection;
using Presence.Desktop.DI;
using Presence.Desktop.ViewModels;
using Presence.Desktop.Views;
namespace Presence.Desktop
{
public partial class App : Application
{
public override void Initialize()
{
AvaloniaXamlLoader.Load(this);
}
public override void OnFrameworkInitializationCompleted()
{
var serviceCollection = new ServiceCollection();
serviceCollection.AddPresenceService();
var services = serviceCollection.BuildServiceProvider();
var maimViewModel = services.GetRequiredService<PresenceViewModel>();
if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop)
{
desktop.MainWindow = new PresenceView()
{
DataContext = maimViewModel,
};
}
base.OnFrameworkInitializationCompleted();
}
}
}