private void bEditService_Click(object sender, RoutedEventArgs e)
        {//обработчик кнопки "редактировать" услугу
            requestedService rs = dgServices.SelectedItem as requestedService;

            if (rs == null)
            {
                MessageBox.Show("выберите услугу");
            }
            else
            {
                Windows.ServicesWindow w = new ServicesWindow(rs);
                w.ShowDialog();
                if (w.DialogResult == true)              //если пользователь завершил ввод
                {
                    Contract.approximateCost -= rs.cost; //вычетаем прежнюю стоимость услуги
                    rs.service                 = w.Service;
                    rs.cost                    = w.Cost;
                    rs.description             = w.Description;
                    rs.stageOfImplementationId = 1;

                    Contract.approximateCost += w.Cost; //добавляем стоимость услуги к общей стоимости
                    tbApproximateEndCost.Text = Contract.approximateCost.ToString();
                    clientDevice currentDevice = rs.clientDevice;
                    updateDbGridService(ref currentDevice); //обновляем список услуг для данного устройства
                    controlBokEnable();
                    controlButtonsEnable();
                }
            }
        }
 private void bAddService_Click(object sender, RoutedEventArgs e)
 {//обработчик кнопки "добавить" услугу
     Windows.ServicesWindow w = new ServicesWindow();
     w.ShowDialog();
     if (w.DialogResult == true)                                                  //если пользователь выбрал услугу
     {
         clientDevice     currentdevice = dgDevices.SelectedItem as clientDevice; //выбираем текущее устройство
         requestedService rs            = new requestedService();                 //формируем запрос на услугу
         rs.clientDevice = currentdevice;
         currentdevice.requestedServices.Add(rs);
         rs.service                 = w.Service;
         rs.cost                    = w.Cost;
         rs.description             = w.Description;
         rs.stageOfImplementationId = 1;
         Contract.approximateCost  += w.Cost;    //добавляем стоимость услуги к общей стоимости
         tbApproximateEndCost.Text  = Contract.approximateCost.ToString();
         updateDbGridService(ref currentdevice); //обновляем список услуг для данного устройства
         controlBokEnable();
         controlButtonsEnable();
     }
 }