private void SelectResearchObjectButton_Click(object sender, RoutedEventArgs e) { long?selectedResearchObjectId = (ResearchObjectsDataGrid.SelectedItem as research_objects).id; if (selectedResearchObjectId.HasValue) { research_objects ro = (from rob in App.DB.research_objects where rob.id == selectedResearchObjectId.Value select rob).Single(); StackPanel researchObjectUIElement = new StackPanel(); researchObjectUIElement.Orientation = Orientation.Horizontal; TextBlock researchObjectName = new TextBlock(); researchObjectName.Text = ro.id.ToString(); Button removeResearchObjectButton = new Button(); removeResearchObjectButton.Content = "[x]"; removeResearchObjectButton.Click += DeleteService; researchObjectUIElement.Tag = ro.id; researchObjectUIElement.Children.Add(researchObjectName); researchObjectUIElement.Children.Add(removeResearchObjectButton); SelectedResearchObjectsContainer.Children.Add(researchObjectUIElement); } else { MessageBox.Show( "Сначала выберите пробирку в таблице", "Ошибка!", MessageBoxButton.OK, MessageBoxImage.Error ); } }
private void CreateResearchObjectButton_Click(object sender, RoutedEventArgs e) { long selectedPatientId = SelectedPatientId; if (selectedPatientId != -1) { patient selectedPatient; try { selectedPatient = (from p in App.DB.patients where p.id == selectedPatientId select p).Single(); } catch (InvalidOperationException exception) { MessageBox.Show("Произошла ошибка при попытке получения данных о пациенте: " + exception.Message, "Ошибка приема пробирки", MessageBoxButton.OK, MessageBoxImage.Error); return; } long barcode; if (!long.TryParse(barcodeField.Text, out barcode)) { MessageBox.Show("Указан недопустимый штри-код пробирки", "Ошибка приема пробирки", MessageBoxButton.OK, MessageBoxImage.Error); return; } research_objects researchObject = new research_objects(); researchObject.barcode = barcode; researchObject.date = DateTime.Now; researchObject.patient = selectedPatient.id; try { App.DB.research_objects.Add(researchObject); App.DB.SaveChanges(); } catch (Exception exception) { MessageBox.Show("Произошла ошибка при попытке добавления записи в базу данных: " + exception.Message, "Ошибка приема пробирки", MessageBoxButton.OK, MessageBoxImage.Error); return; } MessageBox.Show("Запись успешно добавлена!", "Прием пробирок", MessageBoxButton.OK, MessageBoxImage.Information); } else { MessageBox.Show("Пациент должен быть обязательно выбран!", "Ошибка приема пробирки", MessageBoxButton.OK, MessageBoxImage.Error); } }