private void WorkerPageDisappearing(object sender, EventArgs e) { var workerPage = (WorkerPage)sender; workerPage.Disappearing -= WorkerPageDisappearing; ModificationFinished?.Invoke( this, new ModificationStateEventArgs(workerPage.DialogResult, _worker)); }
/// <summary> /// Modifies worker instance /// </summary> /// <param name="worker">Worker instance</param> /// <returns>True, if worker is modified and saved; otherwise - false</returns> public void Modify(IWorker worker) { WorkerWindow workerWindow = new WorkerWindow(); workerWindow.DataContext = new WorkerViewModel(worker); var dialogResult = workerWindow.ShowDialog(); ModificationFinished?.Invoke( this, new ModificationStateEventArgs(dialogResult.HasValue && dialogResult.Value, worker)); }