private void btnAddEmp_Click(object sender, EventArgs e) { Employee newEmployee = new Employee(); EmployeeForm newPersonForm = new EmployeeForm(newEmployee); newPersonForm.Text = "Create new Empoloyee"; newPersonForm.ShowDialog(); // Если была нажата кнопка ОК, то объект работника добавляется в коллекцию работников // If if (newPersonForm.Flag) { newEmployee.Id = persons.Count + 1; persons.Add(newEmployee); comboBox1.DataSource = persons; //TO DO... comboBox1.DisplayMember = "FullName"; comboBox1.SelectedIndex = persons.Count - 1; } //if (newPersonForm.ShowDialog() != DialogResult.OK) //{ // newEmployee.Id = persons.Count + 1; // persons.Add(newEmployee); // comboBox1.DataSource = persons; // //TO DO... // comboBox1.DisplayMember = "FullName"; // comboBox1.SelectedIndex = persons.Count - 1; //} }
private void btnEditEmp_Click(object sender, EventArgs e) { // Если есть хотя бы один работник в коллекции if (comboBox1.SelectedIndex > -1) { // Указывает на то, что данные о работнике будут изменяться, вызывается другой конструктор bool flag = true; Employee existingEmployee = persons[comboBox1.SelectedIndex]; EmployeeForm newPersonForm = new EmployeeForm(existingEmployee, flag); newPersonForm.Text = "Edit existing Empoloyee"; newPersonForm.ShowDialog(); // Если была нажата кнопка OK if (newPersonForm.Flag) { //TO DO... persons.Add(existingEmployee); persons.Remove(existingEmployee); comboBox1.DataSource = persons; //TO DO... comboBox1.DisplayMember = "FullName"; comboBox1.SelectedIndex = persons.Count - 1; } // Если была нажата кнопка удаления работника if (newPersonForm.DelCurrentEmployee) { // Удаление всех записей работника persons[comboBox1.SelectedIndex].JobRecords.Clear(); // Удаление самого работника persons.Remove(existingEmployee); // Вызов события изменения в combobox comboBox1_SelectedIndexChanged(sender, e); } } // Если нет ни одного работника в коллекции else { MessageBox.Show("Add at least one Employee", "Error"); } }