using Avalonia;
using Avalonia.Controls.ApplicationLifetimes;
using Avalonia.Markup.Xaml;
using ZB.MOM.WW.OtOpcUa.Client.Shared;
using ZB.MOM.WW.OtOpcUa.Client.UI.Services;
using ZB.MOM.WW.OtOpcUa.Client.UI.ViewModels;
using ZB.MOM.WW.OtOpcUa.Client.UI.Views;
namespace ZB.MOM.WW.OtOpcUa.Client.UI;
public class App : Application
{
///
public override void Initialize()
{
AvaloniaXamlLoader.Load(this);
}
///
public override void OnFrameworkInitializationCompleted()
{
if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop)
{
var factory = new OpcUaClientServiceFactory();
var dispatcher = new AvaloniaUiDispatcher();
var viewModel = new MainWindowViewModel(factory, dispatcher);
desktop.MainWindow = new MainWindow
{
DataContext = viewModel
};
}
base.OnFrameworkInitializationCompleted();
}
}