using Aitex.Core.RT.Log;
using Aitex.Core.Util;
using Prism.Ioc;
using Prism.Modularity;
using Prism.Services.Dialogs;
using Prism.Unity;
using System;
using System.Threading;
using System.Windows;
using Venus_MainPages.Roles;
using Venus_MainPages.Views;
using Venus_UI.Views;
using WPF.Themes.UserControls;
namespace Venus_UI
{
///
/// App.xaml 的交互逻辑
///
public partial class App : PrismApplication
{
System.Threading.Mutex mutex;
protected override void OnStartup(StartupEventArgs e)
{
bool ret;
mutex = new System.Threading.Mutex(true, "Venus_UI", out ret);
if (!ret)
{
WPFMessageBox.ShowError("Only One Venus_UI is allowed");
Environment.Exit(0);
}
FrameworkCompatibilityPreferences.KeepTextBoxDisplaySynchronizedWithTextProperty = false;
DispatcherUnhandledException += App_DispatcherUnhandledException;
Singleton.Instance.Initialize();
//LoginView loginView = new LoginView();
//loginView.ShowDialog();
//CurrentUser = loginView.CurrentUser;
//if (!loginView.IsLoginSuccess)
//{
// Current.Shutdown();
// return;
//}
base.OnStartup(e);
}
void App_DispatcherUnhandledException(object sender, System.Windows.Threading.DispatcherUnhandledExceptionEventArgs e)
{
//MessageBox.Show("程序异常." + Environment.NewLine + e.Exception.Message);
e.Handled = true;
}
protected override Window CreateShell()
{
return Container.Resolve();
}
protected override void RegisterTypes(IContainerRegistry containerRegistry)
{
}
protected override IModuleCatalog CreateModuleCatalog()
{
return new ConfigurationModuleCatalog();
}
}
}