private void Add_button_Click(object sender, EventArgs e)
 {
     try
     {
         SaveKhoa();
         BoMonEditAndAdd f = new BoMonEditAndAdd(this, makhoa, null);
         this.Hide();
         f.Show();
     }
     catch (MySQLException myex)
     {
         // TODO check primary key Khoa
         if (myex.Number == MySQLException.ExcepEnum.Duplicate)
         {
             MessageBox.Show("Mã Khoa này đã tồn tại, xin hãy chọn mã khoa khác", "Error",
                             MessageBoxButtons.OK, MessageBoxIcon.Error);
         }
     }
     catch (Khoa_Exception khoaex)
     {
         MessageBox.Show("Xin hãy điền thông tin " +
                         Khoa_Exception.ThongBao[(int)khoaex.Number].ToLower() +
                         " chính xác", "Error",
                         MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
     catch (Exception ex)
     {
         MessageBox.Show("Xin mời điền và chọn thông tin đầy đủ và chính xác", "Error",
                         MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
        private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            var senderGrid = (DataGridView)sender;

            if (senderGrid.Columns[e.ColumnIndex] is DataGridViewButtonColumn &&
                e.RowIndex >= 0 && senderGrid.Columns[e.ColumnIndex].Name == "ChiTiet")
            {
                string MaBM = senderGrid.Rows[e.RowIndex].Cells["MaBM"].Value.ToString();
                //Console.WriteLine("chitiet");
                BoMonEditAndAdd f = new BoMonEditAndAdd(this, makhoa, MaBM);
                this.Hide();
                f.Show();
            }
            else if (senderGrid.Columns[e.ColumnIndex] is DataGridViewButtonColumn &&
                     e.RowIndex >= 0 && senderGrid.Columns[e.ColumnIndex].Name == "Xoa")
            {
                try
                {
                    string        MaBM = senderGrid.Rows[e.RowIndex].Cells["MaBM"].Value.ToString();
                    List <BO_MON> mons = new List <BO_MON>();
                    mons.Add(new BO_MON()
                    {
                        MaBoMon = MaBM
                    });
                    BLL.Instance.DelDB(mons);
                }
                catch (MySQLException myex)
                {
                    if (myex.Number == MySQLException.ExcepEnum.Referenced)
                    {
                        MessageBox.Show("Không thể xóa bộ môn này", "Error",
                                        MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    else
                    {
                        MessageBox.Show("Unknown SQL Error", "Error",
                                        MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
                finally
                {
                    ReLoadBM();
                }
            }
        }