//BtnUpdate_Click
 private void BtnUpdateProject_Click(object sender, EventArgs e)
 {
     if (Project.NameIsMatch(tbProjectName.Text) &&
         Project.AddressIsMatch(tbProjectAddress.Text) &&
         Project.ClientIsMatch(tbProjectClient.Text))
     {
         Project project = new Project(actualProject.Id, actualProject.Name,
                                       actualProject.Address, actualProject.IdClient, actualProject.State,
                                       actualProject.DateOfStart, actualProject.DateOfComplete,
                                       actualProject.PlannedDateOfComplete);
         try
         {
             project.Name     = tbProjectName.Text;
             project.Address  = tbProjectAddress.Text;
             project.IdClient = GetIdClientFromTbProjectClient();
             if (project.State != ProjectState.Planned)
             {
                 if (dtpProjectPlannedDateOfComplete.Value <= dtpProjectDateOfStart.Value)
                 {
                     MessageBox.Show(
                         "Сохранение данных невозможно, не все поля заполнены корректно",
                         "Сообщение об ошибке", MessageBoxButtons.OK, MessageBoxIcon.Error);
                     return;
                 }
                 else
                 {
                     project.DateOfStart           = dtpProjectDateOfStart.Value;
                     project.PlannedDateOfComplete = dtpProjectPlannedDateOfComplete.Value;
                 }
             }
             project.Update(driver);
             actualProject = ReadProject(actualProject.Id);
             MessageBox.Show($"Проект {project.Name} обновлен", "Сообщение",
                             MessageBoxButtons.OK, MessageBoxIcon.Information);
             ShowProjects();
             ShowActualProject();
             gbProjectData.Enabled                           = false;
             gbAllProjects.Enabled                           = true;
             gbProjectDataStart.Enabled                      = false;
             btnProjectUpdate.Enabled                        = false;
             btnProjectSwitchCancel.Enabled                  = false;
             pbCheckMarkProjectName.Visible                  = false;
             pbCheckMarkProjectAddress.Visible               = false;
             pbCheckMarkProjectClient.Visible                = false;
             pbCheckMarkProjectDateOfStart.Visible           = false;
             pbCheckMarkProjectPlannedDateOfComplete.Visible = false;
         }
         catch (Exception ex)
         {
             MessageBox.Show(ex.Message, "Сообщение об ошибке", MessageBoxButtons.OK,
                             MessageBoxIcon.Error);
         }
     }
     else
     {
         MessageBox.Show("Сохранение данных невозможно, не все поля заполнены корректно",
                         "Сообщение об ошибке", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
        //BtnCreate_Click
        private void BtnCreateProject_Click(object sender, EventArgs e)
        {
            if (Project.NameIsMatch(tbProjectName.Text) &&
                Project.AddressIsMatch(tbProjectAddress.Text) &&
                Project.ClientIsMatch(tbProjectClient.Text))
            {
                try
                {
                    string  name         = tbProjectName.Text;
                    string  address      = tbProjectAddress.Text;
                    int     idClient     = GetIdClientFromTbProjectClient();
                    Project project      = new Project(name, address, idClient);
                    int     newProjectId = driver.CreateProject(project);
                    MessageBox.Show($"Проект {project.Name} сохранен", "Сообщение",
                                    MessageBoxButtons.OK, MessageBoxIcon.Information);
                    actualProject = driver.ReadProject(newProjectId);
                    ShowProjects();
                    ShowActualProject();
                    gbProjectData.Enabled             = false;
                    gbAllProjects.Enabled             = true;
                    btnProjectCreate.Enabled          = false;
                    btnProjectSwitchCancel.Enabled    = false;
                    pbCheckMarkProjectName.Visible    = false;
                    pbCheckMarkProjectAddress.Visible = false;
                    pbCheckMarkProjectClient.Visible  = false;
                }

                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message, "Сообщение об ошибке", MessageBoxButtons.OK,
                                    MessageBoxIcon.Error);
                }
            }
            else
            {
                MessageBox.Show("Сохранение данных невозможно, не все поля заполнены корректно",
                                "Сообщение об ошибке", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
 //Tb_TextChanged
 private void TbProjectName_TextChanged(object sender, EventArgs e)
 {
     lblCheckProjectName.Visible    = !Project.NameIsMatch(tbProjectName.Text);
     pbCheckMarkProjectName.Visible =
         Project.NameIsMatch(tbProjectName.Text);
 }