//khi sửa ở 1 dòng trên gridview và trỏ sang dòng khác thì có sự kiện private void gvDSLHP_ValidateRow(object sender, DevExpress.XtraGrid.Views.Base.ValidateRowEventArgs e) { if (!them) { if (gvDSLHP.FocusedRowHandle != gvDSLHP.RowCount - 1) { } else { if (MessageBox.Show("Bạn có chắc muốn lưu không?", "Thông báo", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { try { if (gvDSLHP.GetFocusedRowCellValue(colTenMH).ToString() != "" && gvDSLHP.GetFocusedRowCellValue(colTenGV).ToString() != "" && gvDSLHP.GetFocusedRowCellValue(colKyHoc).ToString() != "" && gvDSLHP.GetFocusedRowCellValue(colNgayBatDau).ToString() != "" && gvDSLHP.GetFocusedRowCellValue(colNgayKetThuc).ToString() != "" && gvDSLHP.GetFocusedRowCellValue(colNgayThi).ToString() != "") { //chuẩn hóa tên string maLHP = gvDSLHP.GetFocusedRowCellValue(colMaLHP).ToString(); string monHoc = ChuanHoa(gvDSLHP.GetFocusedRowCellValue(colTenMH).ToString().ToLower()); string giaoVien = ChuanHoa(gvDSLHP.GetFocusedRowCellValue(colTenGV).ToString().ToLower()); DateTime ngaybd = DateTime.Parse(gvDSLHP.GetFocusedRowCellValue(colNgayBatDau).ToString()); DateTime ngaykt = DateTime.Parse(gvDSLHP.GetFocusedRowCellValue(colNgayKetThuc).ToString()); DateTime ngayThi = DateTime.Parse(gvDSLHP.GetFocusedRowCellValue(colNgayThi).ToString()); int kyHoc = Convert.ToInt32(gvDSLHP.GetFocusedRowCellValue(colKyHoc).ToString()); LopHocPhan_BUS.themLHP(maLHP, monHoc, giaoVien, ngaybd, ngaykt, ngayThi, kyHoc); MessageBox.Show("Thêm thành công"); // this.SinhVienbindingSource.EndEdit(); //chuẩn hóa trực tiếp sinh viên vào gridview mà không load lại danh sách // gvDSLHP.SetFocusedRowCellValue(colHoSV, hoSV); // gvDSLHP.SetFocusedRowCellValue(colTenSV, tenSV); /// gvDSLHP.SetFocusedRowCellValue(colDiaChi, diaChi); // gvDSLHP.SetFocusedRowCellValue(colNoiSinh, noiSinh); //load_DS(); //chuẩn hóa ở textbox cboMonHoc.Text = monHoc; cboGiaoVien.Text = giaoVien; cboKyHoc.Text = kyHoc.ToString(); dtpNgayBatDau.Value = ngaybd; dtpNgayKetThuc.Value = ngaykt; dtpNgayThi.Value = ngayThi; cboKhoa.Text = ((DataTable)Khoa_BUS.TenKhoa_MH(monHoc)).Rows[0][0].ToString(); // them = true; } else { MessageBox.Show("Nhập đầy đủ thông tin cho Lớp học phần"); } } catch { MessageBox.Show("Thêm không thành công!"); } } else { them = true; DSLHPbindingSource.RemoveAt(gvDSLHP.RowCount - 1); } } } else if (sua) { sua = false; } else { if (cboGiaoVien.Text.Trim() == gvDSLHP.GetFocusedRowCellValue(colTenGV).ToString().Trim() && cboMonHoc.Text.Trim() == gvDSLHP.GetFocusedRowCellValue(colTenMH).ToString().Trim() && cboKyHoc.Text.Trim() == gvDSLHP.GetFocusedRowCellValue(colKyHoc).ToString().Trim() && gvDSLHP.GetFocusedRowCellValue(colNgayBatDau).ToString() != "" && gvDSLHP.GetFocusedRowCellValue(colNgayKetThuc).ToString() != "" && gvDSLHP.GetFocusedRowCellValue(colNgayThi).ToString() != "" && (dtpNgayBatDau.Value == DateTime.Parse(gvDSLHP.GetFocusedRowCellValue(colNgayBatDau).ToString()) && dtpNgayKetThuc.Value == DateTime.Parse(gvDSLHP.GetFocusedRowCellValue(colNgayKetThuc).ToString()) && dtpNgayThi.Value == DateTime.Parse(gvDSLHP.GetFocusedRowCellValue(colNgayThi).ToString()))) { } else { if (MessageBox.Show("Bạn có chắc muốn sửa không?", "Thông báo", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { try { if (cboMonHoc.Text.Trim() != gvDSLHP.GetFocusedRowCellValue(colTenMH).ToString()) { LopHocPhan_BUS.suaLHP_MH(tbMaLHP.Text, cboMonHoc.Text); cboMonHoc.Text = gvDSLHP.GetFocusedRowCellValue(colTenMH).ToString(); } if (cboGiaoVien.Text.Trim() != gvDSLHP.GetFocusedRowCellValue(colTenGV).ToString()) { LopHocPhan_BUS.suaLHP_GV(tbMaLHP.Text, cboGiaoVien.Text); cboGiaoVien.Text = gvDSLHP.GetFocusedRowCellValue(colTenGV).ToString(); } if (gvDSLHP.GetFocusedRowCellValue(colNgayBatDau).ToString() != "" && gvDSLHP.GetFocusedRowCellValue(colNgayKetThuc).ToString() != "" && gvDSLHP.GetFocusedRowCellValue(colNgayThi).ToString() != "" && (dtpNgayBatDau.Value != DateTime.Parse(gvDSLHP.GetFocusedRowCellValue(colNgayBatDau).ToString()) || dtpNgayKetThuc.Value != DateTime.Parse(gvDSLHP.GetFocusedRowCellValue(colNgayKetThuc).ToString()) || dtpNgayThi.Value != DateTime.Parse(gvDSLHP.GetFocusedRowCellValue(colNgayThi).ToString()))) { LopHocPhan_BUS.suaLHP_date(tbMaLHP.Text, DateTime.Parse(gvDSLHP.GetFocusedRowCellValue(colNgayBatDau).ToString()), DateTime.Parse(gvDSLHP.GetFocusedRowCellValue(colNgayKetThuc).ToString()), DateTime.Parse(gvDSLHP.GetFocusedRowCellValue(colNgayThi).ToString())); dtpNgayBatDau.Value = DateTime.Parse(gvDSLHP.GetFocusedRowCellValue(colNgayBatDau).ToString()); dtpNgayKetThuc.Value = DateTime.Parse(gvDSLHP.GetFocusedRowCellValue(colNgayKetThuc).ToString()); dtpNgayThi.Value = DateTime.Parse(gvDSLHP.GetFocusedRowCellValue(colNgayThi).ToString()); } if (cboKyHoc.Text.Trim() != gvDSLHP.GetFocusedRowCellValue(colKyHoc).ToString()) { LopHocPhan_BUS.suaLHP_KyHoc(tbMaLHP.Text, Convert.ToInt32(gvDSLHP.GetFocusedRowCellValue(colKyHoc).ToString())); cboKyHoc.Text = gvDSLHP.GetFocusedRowCellValue(colKyHoc).ToString(); } cboKhoa.Text = ((DataTable)Khoa_BUS.TenKhoa_MH(cboMonHoc.Text.ToString())).Rows[0][0].ToString(); MessageBox.Show("Sửa thành công!"); } catch { MessageBox.Show("Sửa không thành công!"); } } else { gvDSLHP.SetFocusedRowCellValue(colTenMH, cboMonHoc.Text); gvDSLHP.SetFocusedRowCellValue(colTenGV, cboGiaoVien.Text); gvDSLHP.SetFocusedRowCellValue(colNgayBatDau, dtpNgayBatDau.Value); gvDSLHP.SetFocusedRowCellValue(colNgayKetThuc, dtpNgayKetThuc.Value); gvDSLHP.SetFocusedRowCellValue(colNgayThi, dtpNgayThi.Value); gvDSLHP.SetFocusedRowCellValue(colKyHoc, cboKyHoc.Text); } } } }
private void btnLuu_Click(object sender, EventArgs e) { try { if (!them && gvDSLHP.FocusedRowHandle == gvDSLHP.RowCount - 1) { if (cboKhoa.Text != "" && cboGiaoVien.Text != "" && cboKyHoc.Text != "" && cboMonHoc.Text != "") { string monHoc = ChuanHoa(cboMonHoc.Text.ToLower()); string giaoVien = ChuanHoa(cboGiaoVien.Text.ToLower()); LopHocPhan_BUS.themLHP(tbMaLHP.Text, monHoc, giaoVien, dtpNgayBatDau.Value, dtpNgayKetThuc.Value, dtpNgayThi.Value, Convert.ToInt32(cboKyHoc.Text)); //thêm trực tiếp lớp vào gridview mà không load lại danh sách gvDSLHP.SetFocusedRowCellValue(colMaLHP, tbMaLHP.Text); gvDSLHP.SetFocusedRowCellValue(colTenMH, monHoc); gvDSLHP.SetFocusedRowCellValue(colTenGV, giaoVien); gvDSLHP.SetFocusedRowCellValue(colNgayBatDau, dtpNgayBatDau.Value); gvDSLHP.SetFocusedRowCellValue(colNgayKetThuc, dtpNgayKetThuc.Value); gvDSLHP.SetFocusedRowCellValue(colNgayThi, dtpNgayThi.Value); gvDSLHP.SetFocusedRowCellValue(colKyHoc, cboKyHoc.Text); MessageBox.Show("Thêm thành công"); them = true; } //else if (tbHoSV.Text == "" || tbTenSV.Text == "") //{ // MessageBox.Show("Nhập đầy đủ Họ Tên Sinh Viên"); //} else { MessageBox.Show("Nhập đầy đủ thông tin cho Lớp học phần"); } } else { if (MessageBox.Show("Bạn có chắc muốn sửa không?", "Thông báo", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { try { if (cboMonHoc.Text.Trim() != gvDSLHP.GetFocusedRowCellValue(colTenMH).ToString()) { LopHocPhan_BUS.suaLHP_MH(tbMaLHP.Text, cboMonHoc.Text); gvDSLHP.SetFocusedRowCellValue(colTenMH, cboMonHoc.Text); } if (cboGiaoVien.Text.Trim() != gvDSLHP.GetFocusedRowCellValue(colTenGV).ToString()) { LopHocPhan_BUS.suaLHP_GV(tbMaLHP.Text, cboGiaoVien.Text); gvDSLHP.SetFocusedRowCellValue(colTenGV, cboGiaoVien.Text); } if (gvDSLHP.GetFocusedRowCellValue(colNgayBatDau).ToString() == "" || gvDSLHP.GetFocusedRowCellValue(colNgayKetThuc).ToString() == "" || gvDSLHP.GetFocusedRowCellValue(colNgayThi).ToString() == "" || dtpNgayBatDau.Value != DateTime.Parse(gvDSLHP.GetFocusedRowCellValue(colNgayBatDau).ToString()) || dtpNgayKetThuc.Value != DateTime.Parse(gvDSLHP.GetFocusedRowCellValue(colNgayKetThuc).ToString()) || dtpNgayThi.Value != DateTime.Parse(gvDSLHP.GetFocusedRowCellValue(colNgayThi).ToString())) { LopHocPhan_BUS.suaLHP_date(tbMaLHP.Text, dtpNgayBatDau.Value, dtpNgayKetThuc.Value, dtpNgayThi.Value); gvDSLHP.SetFocusedRowCellValue(colNgayBatDau, dtpNgayBatDau.Value); gvDSLHP.SetFocusedRowCellValue(colNgayKetThuc, dtpNgayKetThuc.Value); gvDSLHP.SetFocusedRowCellValue(colNgayThi, dtpNgayThi.Value); } if (cboKyHoc.Text.Trim() != gvDSLHP.GetFocusedRowCellValue(colKyHoc).ToString()) { LopHocPhan_BUS.suaLHP_KyHoc(tbMaLHP.Text, Convert.ToInt32(cboKyHoc.Text.ToString())); gvDSLHP.SetFocusedRowCellValue(colKyHoc, cboKyHoc.Text); } MessageBox.Show("Sửa thành công!"); sua = true; } catch { MessageBox.Show("Sửa không thành công!"); } } else { tbMaLHP.Text = gvDSLHP.GetFocusedRowCellValue(colMaLHP).ToString(); cboKhoa.Text = gvDSLHP.GetFocusedRowCellValue(colTenKhoa).ToString(); cboMonHoc.Text = gvDSLHP.GetFocusedRowCellValue(colTenMH).ToString(); cboGiaoVien.Text = gvDSLHP.GetFocusedRowCellValue(colTenGV).ToString(); if (gvDSLHP.GetFocusedRowCellValue(colNgayBatDau).ToString() != "") { dtpNgayBatDau.Value = DateTime.Parse(gvDSLHP.GetFocusedRowCellValue(colNgayBatDau).ToString()); } if (gvDSLHP.GetFocusedRowCellValue(colNgayKetThuc).ToString() != "") { dtpNgayKetThuc.Value = DateTime.Parse(gvDSLHP.GetFocusedRowCellValue(colNgayKetThuc).ToString()); } if (gvDSLHP.GetFocusedRowCellValue(colNgayThi).ToString() != "") { dtpNgayThi.Value = DateTime.Parse(gvDSLHP.GetFocusedRowCellValue(colNgayThi).ToString()); } cboKyHoc.Text = gvDSLHP.GetFocusedRowCellValue(colKyHoc).ToString(); } } } catch { MessageBox.Show("Lưu thất bại"); } }