protected override void OnStartup(StartupEventArgs e) { //Allows only one instance Process proc = Process.GetCurrentProcess(); int count = Process.GetProcesses().Where(p => p.ProcessName == proc.ProcessName).Count(); if (count > 1) { MessageBox.Show("Already an instance is running..."); App.Current.Shutdown(); } //Create a custom principal with an anonymous identity at startup CustomPrincipal customPrincipal = new CustomPrincipal(); AppDomain.CurrentDomain.SetThreadPrincipal(customPrincipal); base.OnStartup(e); //Show the login view AuthenticationViewModel viewModel = new AuthenticationViewModel(new AuthenticationService()); IView loginWindow = new LoginWindow(viewModel); loginWindow.Show(); }
public LoginWindow(AuthenticationViewModel viewModel) { ViewModel = viewModel; InitializeComponent(); }