一.知識點描述
DataGridView控件具有極高的可配置性和可擴展性。它提供有大量的屬性、方法和事件,可以用來對該控件的外觀和行為進行自定義。下面通過一個小例子來展示DataGridView進行增刪改查,並同步到數據庫的功能。
用戶需求:
1.當窗體顯示時,將數據庫中用戶表中的數據顯示出來。
2.選中一行,執行刪除操作,同時在數據庫中相應數據被刪除。
3.雙擊某個數據,進行編輯,或者在空白行添加新的數據,然后點擊更新,數據庫隨之更新。
二.思維導圖
三.示例代碼
(1)增加數據
private void AddStudent()
{
frm_StudentInfo studentInfoForm =
new frm_StudentInfo(this.EduBaseEntities, null, this.ClassNo);
studentInfoForm.ShowDialog();
this.LoadCurrentStudents();
}
(2)刪除數據
private void DeleteStudent()
{
if (this.dgv_Student.Rows.Count > 0)
{
string currentStudentNo =
this.dgv_Student.CurrentRow.Cells["No"].Value.ToString().Trim();
if (MessageBox.Show
("是否確認刪除" + currentStudentNo + "號學生?"
, "提示"
, MessageBoxButtons.OKCancel)
== DialogResult.OK)
{
MessageBox.Show("提交" + StudentBll.Delete(this.EduBaseEntities, currentStudentNo).ToString() + "行。");
this.LoadCurrentStudents();
}
}
}
(3)更改數據
private void AddStudent()
{
frm_StudentInfo studentInfoForm =
new frm_StudentInfo(this.EduBaseEntities, null, this.ClassNo);
studentInfoForm.ShowDialog();
this.LoadCurrentStudents();
}
private void DeleteStudent()
{
if (this.dgv_Student.Rows.Count > 0)
{
string currentStudentNo =
this.dgv_Student.CurrentRow.Cells["No"].Value.ToString().Trim();
if (MessageBox.Show
("是否確認刪除" + currentStudentNo + "號學生?"
, "提示"
, MessageBoxButtons.OKCancel)
== DialogResult.OK)
{
MessageBox.Show("提交" + StudentBll.Delete(this.EduBaseEntities, currentStudentNo).ToString() + "行。");
this.LoadCurrentStudents();
}
}
}
(4)查找數據
private void EditStudent()
{
if (this.dgv_Student.Rows.Count > 0)
{
string currentStudentNo =
this.dgv_Student.CurrentRow.Cells["No"].Value.ToString();
frm_StudentInfo studentInfoForm =
new frm_StudentInfo(this.EduBaseEntities, currentStudentNo, 0);
studentInfoForm.ShowDialog();
this.LoadCurrentStudents();
}
}
四.效果截圖