private void OKButton_Click(object sender, RoutedEventArgs e) { IDataErrorInfo errors = DataContext as IDataErrorInfo; if(errors != null) { if (errors.Error != null) { MessageWindow wnd = new MessageWindow(errors.Error, MessageWindowImage.Warning, true); wnd.Owner = this; wnd.ShowDialog(); } else this.DialogResult = true; } }
protected override void OnStartup(StartupEventArgs e) { // Получаем ссылку на текущий процесс Process thisProc = Process.GetCurrentProcess(); // Проверить количество процессов с таким же именем if (Process.GetProcessesByName(thisProc.ProcessName).Length > 1) { MessageWindow wnd = new MessageWindow("Программа уже запущена. Только одна копия программы может выполнятся в одно и то же время.", MessageWindowImage.Warning, true); wnd.WindowStartupLocation = WindowStartupLocation.CenterScreen; wnd.ShowDialog(); Application.Current.Shutdown(); return; } base.OnStartup(e); }