コード例 #1
0
        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
                    );
            }
        }
コード例 #2
0
        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);
            }
        }