private void Cancel_Click(object sender, RoutedEventArgs e) { LoadingControl.Visibility = Save.Visibility = Cancel.Visibility = Visibility.Collapsed; Done.Visibility = Visibility.Visible; foreach (object control in Body.Children) { if (control is TextBlock || control is StackPanel) { } else { ((Control)control).IsEnabled = true; } } if (action == Actions.New) { recordData = RecordsList.SelectedItem as Consultant; DataContext = new { recordData, UserData }; } else if (action == Actions.Edit) { recordData.Update(oldData); using (SqlConnection connection = new SqlConnection(Database.ConnectionString)) { UserData.ConsultantId = null; connection.UserAccessUpdate(UserData, nameof(UserData.ConsultantId)); } } }
private void Edit_Click(object sender, RoutedEventArgs e) { User usedBy; if (recordData != null) { using (SqlConnection connection = new SqlConnection(Database.ConnectionString)) { usedBy = connection.AccessValidation(nameof(UserData.ConsultantId), recordData.Id); if (usedBy == null || usedBy.Id == UserData.Id) { UserData.ConsultantId = recordData.Id; connection.UserAccessUpdate(UserData, nameof(UserData.ConsultantId)); } } if (usedBy == null) { LoadingControl.Visibility = Save.Visibility = Cancel.Visibility = Visibility.Visible; Done.Visibility = Visibility.Collapsed; foreach (object control in Body.Children) { if (control is TextBlock || control is StackPanel) { } else { ((Control)control).IsEnabled = true; } } action = Actions.Edit; oldData = new Consultant(); oldData.Update(recordData); } else { MessageWindow.Show($"Access", $"This consultant data underwork by {usedBy.Name}!", MessageWindowButton.OK, MessageWindowImage.Warning); } } }