Exemple #1
0
        public void Request()
        {
            if (!isReset)
            {
                // Создаём диалоговое окно
                DialogV dialogV    = new DialogV();
                Grid    dialogGrid = dialogV.Dialog_Grid;

                // Заполняем нижний Button текстом и вешаем локальный обработчик события нажатия
                Button button = dialogV.Button_Execute;
                button.SetResourceReference(Button.ContentProperty, "Text_Request");
                button.Click += new RoutedEventHandler(ExecuteRequest);

                // Вешаем элементы в Grid
                Grid.SetRow(Login, 0);
                Grid.SetColumn(Login, 0);
                dialogGrid.Children.Add(Login);

                Grid.SetRow(login, 0);
                Grid.SetColumn(login, 1);
                dialogGrid.Children.Add(login);

                // Показываем диалоговое окно
                dialogV.ShowDialog();

                // Очищаем Grid
                dialogGrid.Children.Remove(login);
                dialogGrid.Children.Remove(Login);

                Grid.SetRow(login, 5);
                Grid.SetColumn(login, 1);
                Grid.SetRow(Login, 0);
                Grid.SetColumn(Login, 0);

                // Очищаем поля
                login.Text = null;
            }
            else
            {
                TableV.Current_Button_Request.SetResourceReference(Button.ContentProperty, "Text_Request");

                TableV.Current_DataGrid.ItemsSource = SourceList;
                TableV.Current_DataGrid.Items.Refresh();

                isReset = false;
            }
        }
        private void AddMoney_Click(object sender, RoutedEventArgs e)
        {
            dialogV = new DialogV();
            Grid dialogGrid = dialogV.Dialog_Grid;

            Thickness temp = new Thickness(5);

            Money      = new TextBlock();
            Money.Text = App.Current.Resources["Text_Summ"] + ":";
            Grid.SetRow(Money, 0);
            Grid.SetColumn(Money, 0);

            money        = new TextBox();
            money.Margin = temp;
            Grid.SetRow(money, 0);
            Grid.SetColumn(money, 1);

            Button button = dialogV.Button_Execute;

            button.Content = App.Current.Resources["Text_AddMoney"];

            button.Click += new RoutedEventHandler(ExecuteAddMoney);

            // Вешаем элементы в Grid
            dialogGrid.Children.Add(Money);

            dialogGrid.Children.Add(money);

            // Заполняем нижний Button текстом и вешаем локальный обработчик события нажатия

            dialogV.ShowDialog();

            // Очищаем Grid
            dialogGrid.Children.Remove(Money);

            dialogGrid.Children.Remove(money);

            money.Text = null;
        }
Exemple #3
0
        // Verified
        public void AddEdit(bool isAdd)
        {
            this.isAdd = isAdd;
            // Показываем диалоговое окно
            DialogV dialogV    = new DialogV();
            Grid    dialogGrid = dialogV.Dialog_Grid;

            Button button = dialogV.Button_Execute;

            // Если это добавление
            if (isAdd)
            {
                scheduleNum.SelectedIndex = 0;
                carriageNum.SelectedIndex = 0;
                username.SelectedIndex    = 0;

                button.Content = App.Current.Resources["Text_Add"];
                index          = -1;
            }
            // Если это изменение
            else
            {
                // если ничего не выбрано в датагриде то ошибка
                // если выбрано больше 1 элемента то тоже ошибка
                if (TableV.Current_DataGrid.SelectedItems.Count < 1)
                {
                    MessageBox.Show("Выберите элемент для изменения!", "Ошибка!", MessageBoxButton.OK, MessageBoxImage.Error);
                    return;
                }
                else if (TableV.Current_DataGrid.SelectedItems.Count > 1)
                {
                    MessageBox.Show("Можно выбрать для изменения не более ОДНОГО элемента за раз!", "Ошибка!", MessageBoxButton.OK, MessageBoxImage.Error);
                    return;
                }

                //индекс текущей выбранной строки в DataGrid
                //кастыль, но куда без кастылей?
                index = TableV.Current_DataGrid.SelectedIndex;

                //Если всё ок, вставляем данные для данного юзера в форму, который затем будем менять
                TicketsM temp = SourceList[index];

                scheduleNum.SelectedItem = temp._schedule_id;
                seatnum.Text             = temp._seatnum.ToString();
                carriageNum.SelectedItem = temp._carriage_number;
                username.SelectedItem    = temp.UsersM._login;

                button.Content = App.Current.Resources["Text_Edit"];
            }

            button.Click += new RoutedEventHandler(ExecuteAddEdit);

            // Вешаем элементы в Grid
            dialogGrid.Children.Add(ScheduleNum);
            dialogGrid.Children.Add(Seatnum);
            dialogGrid.Children.Add(CarriageNum);
            dialogGrid.Children.Add(Username);

            dialogGrid.Children.Add(scheduleNum);
            dialogGrid.Children.Add(seatnum);
            dialogGrid.Children.Add(carriageNum);
            dialogGrid.Children.Add(username);

            // Заполняем нижний Button текстом и вешаем локальный обработчик события нажатия

            dialogV.ShowDialog();

            // Очищаем Grid
            dialogGrid.Children.Remove(ScheduleNum);
            dialogGrid.Children.Remove(Seatnum);
            dialogGrid.Children.Remove(CarriageNum);
            dialogGrid.Children.Remove(Username);

            dialogGrid.Children.Remove(scheduleNum);
            dialogGrid.Children.Remove(seatnum);
            dialogGrid.Children.Remove(carriageNum);
            dialogGrid.Children.Remove(username);;

            scheduleNum.SelectedIndex = 0;
            seatnum.Text = null;
            carriageNum.SelectedIndex = 0;
            username.SelectedIndex    = 0;
        }
Exemple #4
0
        // Verified
        public void AddEdit(bool isAdd)
        {
            // Сохранить состояние, добавление это или изменение
            this.isAdd = isAdd;

            // Создаём диалоговое окно
            DialogV dialogV    = new DialogV();
            Grid    dialogGrid = dialogV.Dialog_Grid;

            // Заполняем нижний Button текстом и вешаем локальный обработчик события нажатия
            Button button = dialogV.Button_Execute;

            // Если это добавление
            if (isAdd)
            {
                button.Content = App.Current.Resources["Text_Add"];
                index          = -1;
            }
            // Если это изменение
            else
            {
                // если ничего не выбрано в датагриде то ошибка
                // если выбрано больше 1 элемента то тоже ошибка
                if (TableV.Current_DataGrid.SelectedItems.Count < 1)
                {
                    MessageBox.Show("Выберите элемент для изменения!", "Ошибка!", MessageBoxButton.OK, MessageBoxImage.Error);
                    return;
                }
                else if (TableV.Current_DataGrid.SelectedItems.Count > 1)
                {
                    MessageBox.Show("Можно выбрать для изменения не более ОДНОГО элемента за раз!", "Ошибка!", MessageBoxButton.OK, MessageBoxImage.Error);
                    return;
                }

                // индекс текущей выбранной строки в DataGrid
                // кастыль, но куда без кастылей?
                index = TableV.Current_DataGrid.SelectedIndex;

                // Если всё ок, вставляем данные для данного юзера в форму, который затем будем менять
                UsersM temp = SourceList[index];

                surname.Text      = temp._surname;
                name.Text         = temp._name;
                lastname.Text     = temp._lastname;
                sex.SelectedIndex = temp._sex;

                DateTime startdate = DateTime.MinValue.AddMilliseconds(temp._birthday);
                birthday.Text = startdate.ToString("dd.MM.yyyy");

                login.Text           = temp._login;
                password.Text        = temp._pass;
                access.SelectedIndex = temp._access;
                bill.Text            = temp._bill.ToString();

                button.Content = App.Current.Resources["Text_Edit"];
            }

            // назначаем метод для события кнопки
            // метод сразу обрабатывает и добавление и изменение, типа оптимизация
            button.Click += new RoutedEventHandler(ExecuteAddEdit);

            // Вешаем элементы в Grid
            dialogGrid.Children.Add(Surname);
            dialogGrid.Children.Add(Name);
            dialogGrid.Children.Add(Lastname);
            dialogGrid.Children.Add(Sex);
            dialogGrid.Children.Add(Birthday);
            dialogGrid.Children.Add(Login);
            dialogGrid.Children.Add(Password);
            dialogGrid.Children.Add(Access);
            dialogGrid.Children.Add(Bill);

            dialogGrid.Children.Add(surname);
            dialogGrid.Children.Add(name);
            dialogGrid.Children.Add(lastname);
            dialogGrid.Children.Add(sex);
            dialogGrid.Children.Add(birthday);
            dialogGrid.Children.Add(login);
            dialogGrid.Children.Add(password);
            dialogGrid.Children.Add(access);
            dialogGrid.Children.Add(bill);

            // Показываем диалоговое окно
            dialogV.ShowDialog();

            // Очищаем Grid
            dialogGrid.Children.Remove(surname);
            dialogGrid.Children.Remove(name);
            dialogGrid.Children.Remove(lastname);
            dialogGrid.Children.Remove(sex);
            dialogGrid.Children.Remove(birthday);
            dialogGrid.Children.Remove(login);
            dialogGrid.Children.Remove(password);
            dialogGrid.Children.Remove(access);
            dialogGrid.Children.Remove(bill);

            dialogGrid.Children.Remove(Surname);
            dialogGrid.Children.Remove(Name);
            dialogGrid.Children.Remove(Lastname);
            dialogGrid.Children.Remove(Sex);
            dialogGrid.Children.Remove(Birthday);
            dialogGrid.Children.Remove(Login);
            dialogGrid.Children.Remove(Password);
            dialogGrid.Children.Remove(Access);
            dialogGrid.Children.Remove(Bill);

            // Очищаем поля
            surname.Text         = null;
            name.Text            = null;
            lastname.Text        = null;
            sex.SelectedIndex    = 0;
            birthday.Text        = null;
            login.Text           = null;
            password.Text        = null;
            access.SelectedIndex = 0;
            bill.Text            = null;
        }
Exemple #5
0
        // Verified
        public void AddEdit(bool isAdd)
        {
            this.isAdd = isAdd;

            // Показываем диалоговое окно
            DialogV dialogV    = new DialogV();
            Grid    dialogGrid = dialogV.Dialog_Grid;
            // Заполняем нижний Button текстом и вешаем локальный обработчик события нажатия
            Button button = dialogV.Button_Execute;

            // Если это добавление
            if (isAdd)
            {
                button.Content = App.Current.Resources["Text_Add"];
                index          = -1;
            }
            // Если это изменение
            else
            {
                // если ничего не выбрано в датагриде то ошибка
                // если выбрано больше 1 элемента то тоже ошибка
                if (TableV.Current_DataGrid.SelectedItems.Count < 1)
                {
                    MessageBox.Show("Выберите элемент для изменения!", "Ошибка!", MessageBoxButton.OK, MessageBoxImage.Error);
                    return;
                }
                else if (TableV.Current_DataGrid.SelectedItems.Count > 1)
                {
                    MessageBox.Show("Можно выбрать для изменения не более ОДНОГО элемента за раз!", "Ошибка!", MessageBoxButton.OK, MessageBoxImage.Error);
                    return;
                }
                index = TableV.Current_DataGrid.SelectedIndex;

                CitiesM temp = SourceList[index];

                cityName.Text  = temp._city_name;
                latitude.Text  = temp._latitude.ToString();
                longitude.Text = temp._longitude.ToString();

                button.Content = App.Current.Resources["Text_Edit"];
            }

            // Заполняем нижний Button текстом и вешаем локальный обработчик события нажатия
            button.Click += new RoutedEventHandler(ExecuteAddEdit);

            // Вешаем элементы в Grid
            dialogGrid.Children.Add(CityName);
            dialogGrid.Children.Add(Latitude);
            dialogGrid.Children.Add(Longitude);

            dialogGrid.Children.Add(cityName);
            dialogGrid.Children.Add(latitude);
            dialogGrid.Children.Add(longitude);

            dialogV.ShowDialog();

            // Очищаем Grid
            dialogGrid.Children.Remove(CityName);
            dialogGrid.Children.Remove(Latitude);
            dialogGrid.Children.Remove(Longitude);

            dialogGrid.Children.Remove(cityName);
            dialogGrid.Children.Remove(latitude);
            dialogGrid.Children.Remove(longitude);

            // Очищаем поля
            cityName.Text  = null;
            latitude.Text  = null;
            longitude.Text = null;
        }
Exemple #6
0
        // Verified
        public void AddEdit(bool isAdd)
        {
            this.isAdd = isAdd;
            // Показываем диалоговое окно
            DialogV dialogV    = new DialogV();
            Grid    dialogGrid = dialogV.Dialog_Grid;

            Button button = dialogV.Button_Execute;

            // Если это добавление
            if (isAdd)
            {
                button.Content = App.Current.Resources["Text_Add"];
                index          = -1;
            }
            // Если это изменение
            else
            {
                // если ничего не выбрано в датагриде то ошибка
                // если выбрано больше 1 элемента то тоже ошибка
                if (TableV.Current_DataGrid.SelectedItems.Count < 1)
                {
                    MessageBox.Show("Выберите элемент для изменения!", "Ошибка!", MessageBoxButton.OK, MessageBoxImage.Error);
                    return;
                }
                else if (TableV.Current_DataGrid.SelectedItems.Count > 1)
                {
                    MessageBox.Show("Можно выбрать для изменения не более ОДНОГО элемента за раз!", "Ошибка!", MessageBoxButton.OK, MessageBoxImage.Error);
                    return;
                }

                // индекс текущей выбранной строки в DataGrid
                // кастыль, но куда без кастылей?
                index = TableV.Current_DataGrid.SelectedIndex;

                // Если всё ок, вставляем данные для данного юзера в форму, который затем будем менять
                LocomotivesM temp = SourceList[index];

                model.Text            = temp._model;
                type.SelectedIndex    = temp._type;
                weight.Text           = temp._weight.ToString();
                maxTrailerWeight.Text = temp._max_trailer_weight.ToString();
                avgspeed0.Text        = temp._avgspeed0.ToString();
                avgspeed100.Text      = temp._avgspeed100.ToString();

                button.Content = App.Current.Resources["Text_Edit"];
            }

            button.Click += new RoutedEventHandler(ExecuteAddEdit);

            // Вешаем элементы в Grid
            dialogGrid.Children.Add(Model);
            dialogGrid.Children.Add(Type);
            dialogGrid.Children.Add(Weight);
            dialogGrid.Children.Add(MaxTrailerWeight);
            dialogGrid.Children.Add(AvgSpeed0);
            dialogGrid.Children.Add(AvgSpeed100);

            dialogGrid.Children.Add(model);
            dialogGrid.Children.Add(type);
            dialogGrid.Children.Add(weight);
            dialogGrid.Children.Add(maxTrailerWeight);
            dialogGrid.Children.Add(avgspeed0);
            dialogGrid.Children.Add(avgspeed100);

            // Заполняем нижний Button текстом и вешаем локальный обработчик события нажатия

            dialogV.ShowDialog();

            // Очищаем Grid
            dialogGrid.Children.Remove(model);
            dialogGrid.Children.Remove(type);
            dialogGrid.Children.Remove(weight);
            dialogGrid.Children.Remove(maxTrailerWeight);
            dialogGrid.Children.Remove(avgspeed0);
            dialogGrid.Children.Remove(avgspeed100);

            dialogGrid.Children.Remove(Model);
            dialogGrid.Children.Remove(Type);
            dialogGrid.Children.Remove(Weight);
            dialogGrid.Children.Remove(MaxTrailerWeight);
            dialogGrid.Children.Remove(AvgSpeed0);
            dialogGrid.Children.Remove(AvgSpeed100);

            model.Text            = null;
            type.SelectedIndex    = 0;
            weight.Text           = null;
            maxTrailerWeight.Text = null;
            avgspeed0.Text        = null;
            avgspeed100.Text      = null;
        }
Exemple #7
0
        // Verified
        public void AddEdit(bool isAdd)
        {
            this.isAdd = isAdd;
            // Показываем диалоговое окно
            DialogV dialogV    = new DialogV();
            Grid    dialogGrid = dialogV.Dialog_Grid;

            Button button = dialogV.Button_Execute;

            // Если это добавление
            if (isAdd)
            {
                startCity.SelectedIndex  = 0;
                finishCity.SelectedIndex = 0;

                button.Content = App.Current.Resources["Text_Add"];
                index          = -1;
            }
            // Если это изменение
            else
            {
                // если ничего не выбрано в датагриде то ошибка
                // если выбрано больше 1 элемента то тоже ошибка
                if (TableV.Current_DataGrid.SelectedItems.Count < 1)
                {
                    MessageBox.Show("Выберите элемент для изменения!", "Ошибка!", MessageBoxButton.OK, MessageBoxImage.Error);
                    return;
                }
                else if (TableV.Current_DataGrid.SelectedItems.Count > 1)
                {
                    MessageBox.Show("Можно выбрать для изменения не более ОДНОГО элемента за раз!", "Ошибка!", MessageBoxButton.OK, MessageBoxImage.Error);
                    return;
                }

                //индекс текущей выбранной строки в DataGrid
                //кастыль, но куда без кастылей?
                index = TableV.Current_DataGrid.SelectedIndex;

                //Если всё ок, вставляем данные для данного юзера в форму, который затем будем менять
                RoutesM temp = SourceList[index];

                routeName.Text = temp._route_name;

                if (temp.CitiesM_Start != null)
                {
                    if (temp.CitiesM_Start._city_name != null)
                    {
                        startCity.SelectedItem = temp.CitiesM_Start._city_name;
                    }
                }

                if (temp.CitiesM_Finish != null)
                {
                    if (temp.CitiesM_Finish._city_name != null)
                    {
                        finishCity.SelectedItem = temp.CitiesM_Finish._city_name;
                    }
                }

                distance.Text = temp._distance.ToString();

                button.Content = App.Current.Resources["Text_Edit"];
            }

            button.Click += new RoutedEventHandler(ExecuteAddEdit);

            // Вешаем элементы в Grid
            dialogGrid.Children.Add(RouteName);
            dialogGrid.Children.Add(StartCity);
            dialogGrid.Children.Add(FinishCity);
            dialogGrid.Children.Add(Distance);

            dialogGrid.Children.Add(routeName);
            dialogGrid.Children.Add(startCity);
            dialogGrid.Children.Add(finishCity);
            dialogGrid.Children.Add(distance);

            // Заполняем нижний Button текстом и вешаем локальный обработчик события нажатия

            dialogV.ShowDialog();

            // Очищаем Grid
            dialogGrid.Children.Remove(RouteName);
            dialogGrid.Children.Remove(StartCity);
            dialogGrid.Children.Remove(FinishCity);
            dialogGrid.Children.Remove(Distance);

            dialogGrid.Children.Remove(routeName);
            dialogGrid.Children.Remove(startCity);
            dialogGrid.Children.Remove(finishCity);
            dialogGrid.Children.Remove(distance);

            routeName.Text           = null;
            startCity.SelectedIndex  = 0;
            finishCity.SelectedIndex = 0;
        }
Exemple #8
0
        // Verified
        public void AddEdit(bool isAdd)
        {
            this.isAdd = isAdd;
            // Показываем диалоговое окно
            DialogV dialogV    = new DialogV();
            Grid    dialogGrid = dialogV.Dialog_Grid;

            Button button = dialogV.Button_Execute;

            // Если это добавление
            if (isAdd)
            {
                button.Content = App.Current.Resources["Text_Add"];
                index          = -1;

                trainID.SelectedIndex   = 0;
                routeName.SelectedIndex = 0;
                status.SelectedIndex    = 0;
            }
            else
            if (Settings.Default.IsAdmin == false) // Покупка
            {
                // если ничего не выбрано в датагриде то ошибка
                // если выбрано больше 1 элемента то тоже ошибка
                if (TableV.Current_DataGrid.SelectedItems.Count < 1)
                {
                    MessageBox.Show("Выберите элемент для покупки!", "Ошибка!", MessageBoxButton.OK, MessageBoxImage.Error);
                    return;
                }
                else if (TableV.Current_DataGrid.SelectedItems.Count > 1)
                {
                    MessageBox.Show("Можно выбрать для изменения не более ОДНОГО элемента за раз!", "Ошибка!", MessageBoxButton.OK, MessageBoxImage.Error);
                    return;
                }

                //индекс текущей выбранной строки в DataGrid
                //кастыль, но куда без кастылей?
                index = TableV.Current_DataGrid.SelectedIndex;

                //Если всё ок, вставляем данные для данного юзера в форму, который затем будем менять
                SchedulesM temp = SourceList[index];
                trainID.SelectedItem   = temp._train_id;
                trainID.IsReadOnly     = true;
                routeName.SelectedItem = temp.RoutesM._route_name;
                routeName.IsReadOnly   = true;
                DateTime startdate = DateTime.MinValue.AddMilliseconds(temp._departure_datetime);
                DateTime enddate   = DateTime.MinValue.AddMilliseconds(temp._arrival_datetime);
                departureDate.Text       = startdate.ToString("dd.MM.yyyy");
                departureDate.IsReadOnly = true;
                arrivalDate.Text         = enddate.ToString("dd.MM.yyyy");
                arrivalDate.IsReadOnly   = true;
                price.Text       = temp._price.ToString();
                price.IsReadOnly = true;

                button.Content = App.Current.Resources["Text_Buy"];
            }
            else
            {
                // если ничего не выбрано в датагриде то ошибка
                // если выбрано больше 1 элемента то тоже ошибка
                if (TableV.Current_DataGrid.SelectedItems.Count < 1)
                {
                    MessageBox.Show("Выберите элемент для изменения!", "Ошибка!", MessageBoxButton.OK, MessageBoxImage.Error);
                    return;
                }
                else if (TableV.Current_DataGrid.SelectedItems.Count > 1)
                {
                    MessageBox.Show("Можно выбрать для изменения не более ОДНОГО элемента за раз!", "Ошибка!", MessageBoxButton.OK, MessageBoxImage.Error);
                    return;
                }

                //индекс текущей выбранной строки в DataGrid
                //кастыль, но куда без кастылей?
                index = TableV.Current_DataGrid.SelectedIndex;

                //Если всё ок, вставляем данные для данного юзера в форму, который затем будем менять
                SchedulesM temp = SourceList[index];

                trainID.SelectedItem   = temp._train_id;
                routeName.SelectedItem = temp.RoutesM._route_name;

                DateTime startdate = DateTime.MinValue.AddMilliseconds(temp._departure_datetime);
                DateTime enddate   = DateTime.MinValue.AddMilliseconds(temp._arrival_datetime);

                departureDate.Text = startdate.ToString("dd.MM.yyyy HH:mm");
                arrivalDate.Text   = enddate.ToString("dd.MM.yyyy HH:mm");

                status.SelectedIndex = temp._status;

                price.Text = temp._price.ToString();

                button.Content = App.Current.Resources["Text_Edit"];
            }

            if (Settings.Default.IsAdmin == false)
            {
                button.Click += new RoutedEventHandler(ExecuteBuy);

                // Вешаем элементы в Grid
                dialogGrid.Children.Add(TrainID);
                dialogGrid.Children.Add(RouteName);
                dialogGrid.Children.Add(DepartureDate);
                dialogGrid.Children.Add(ArrivalDate);
                dialogGrid.Children.Add(Price);
                dialogGrid.Children.Add(Seatnum);
                dialogGrid.Children.Add(CarriageNum);

                dialogGrid.Children.Add(trainID);
                dialogGrid.Children.Add(routeName);
                dialogGrid.Children.Add(departureDate);
                dialogGrid.Children.Add(arrivalDate);
                dialogGrid.Children.Add(price);
                dialogGrid.Children.Add(seatnum);
                dialogGrid.Children.Add(carriageNum);

                // Заполняем нижний Button текстом и вешаем локальный обработчик события нажатия

                dialogV.ShowDialog();

                // Очищаем Grid
                dialogGrid.Children.Remove(TrainID);
                dialogGrid.Children.Remove(RouteName);
                dialogGrid.Children.Remove(DepartureDate);
                dialogGrid.Children.Remove(ArrivalDate);
                dialogGrid.Children.Remove(Price);
                dialogGrid.Children.Remove(Seatnum);
                dialogGrid.Children.Remove(CarriageNum);

                dialogGrid.Children.Remove(trainID);
                dialogGrid.Children.Remove(routeName);
                dialogGrid.Children.Remove(departureDate);
                dialogGrid.Children.Remove(arrivalDate);
                dialogGrid.Children.Remove(price);
                dialogGrid.Children.Remove(seatnum);
                dialogGrid.Children.Remove(carriageNum);

                routeName.SelectedIndex = 0;
                departureDate.Text      = null;
                arrivalDate.Text        = null;
                price.Text                = null;
                seatnum.SelectedIndex     = 0;
                carriageNum.SelectedIndex = 0;
            }
            else
            {
                button.Click += new RoutedEventHandler(ExecuteAddEdit);

                // Вешаем элементы в Grid
                dialogGrid.Children.Add(TrainID);
                dialogGrid.Children.Add(RouteName);
                dialogGrid.Children.Add(DepartureDate);
                dialogGrid.Children.Add(ArrivalDate);
                dialogGrid.Children.Add(Price);

                dialogGrid.Children.Add(trainID);
                dialogGrid.Children.Add(routeName);
                dialogGrid.Children.Add(departureDate);
                dialogGrid.Children.Add(arrivalDate);
                dialogGrid.Children.Add(price);

                // Заполняем нижний Button текстом и вешаем локальный обработчик события нажатия

                dialogV.ShowDialog();

                // Очищаем Grid
                dialogGrid.Children.Remove(TrainID);
                dialogGrid.Children.Remove(RouteName);
                dialogGrid.Children.Remove(DepartureDate);
                dialogGrid.Children.Remove(ArrivalDate);
                dialogGrid.Children.Remove(Price);

                dialogGrid.Children.Remove(trainID);
                dialogGrid.Children.Remove(routeName);
                dialogGrid.Children.Remove(departureDate);
                dialogGrid.Children.Remove(arrivalDate);
                dialogGrid.Children.Remove(price);

                routeName.SelectedIndex = 0;
                departureDate.Text      = null;
                arrivalDate.Text        = null;
                price.Text = null;
            }
        }