/// <summary> /// Called when [startup]. /// </summary> /// <param name="sender">The sender.</param> /// <param name="e">The <see cref="StartupEventArgs" /> instance containing the event data.</param> private void OnStartup(object sender, StartupEventArgs e) { bool createdNew; _mutex = new Mutex(true, "LifeBoard", out createdNew); if (createdNew) { ConfigRepository.Open(); string documentPath = ConfigRepository.Config.DocumentPath; if (Environment.GetCommandLineArgs().Length > 1) { documentPath = Environment.GetCommandLineArgs()[1]; } _board.OpenDocument(documentPath); ConfigRepository.SetDocumentPath(_board.DocumentPath); Global.UpdateResources(ConfigRepository.Config.Language); var viewModel = new MainViewModel(_board); var view = new MainView(viewModel); view.Show(); } else { Process current = Process.GetCurrentProcess(); foreach (Process process in Process.GetProcessesByName(current.ProcessName)) { if (process.Id != current.Id) { ShowWindow((int) process.MainWindowHandle, 3); SetForegroundWindow(process.MainWindowHandle); break; } } Current.Shutdown(); } }
public MainView(MainViewModel viewModel) { InitializeComponent(); DataContext = viewModel; }