這裏是自己做的修改和刪除,點擊修改時彈出修改窗體,點擊刪除時彈出"確認刪除"的對話框.這裏主要是說明,如何在DataGridView中獲取到單擊的相應按鈕.WinForm中的DataGridView不像web下的GridView控件,可以直接給加入的修改,刪除LinkButton添加事件,從而對行處理.
在WinForm中,必須要獲取到單擊的是哪類按鈕,才能對相應的按鈕作相應的處理.
首先,在DataGridView(dgvTest)中加入兩個DataGridViewLinkColumn類型的列,其Name分別設置爲update和delete,Text分別爲修改,刪除.把兩列的UseColumnTextForLinkValue設爲true,意爲設置列的文本.
然後在DataGridView的Cell_Click中添加獲取單擊相應控件的代碼,並進行相應的事件處理,代碼參考如下:
private void dgvUsers_CellClick(object sender, DataGridViewCellEventArgs e)
{
string action = dgvUsers.Columns[e.ColumnIndex].Name;//操作類型
switch (action)
{
case "update":
//獲取相應列的數據ID,彈出加載了該ID數據詳細信息的Form,用以修改
break;
case "Delete":
if (MessageBox.Show("確定刪除嗎?", "刪除提示", MessageBoxButtons.OKCancel) == DialogResult.OK)
{
//獲取相應列的數據ID,刪除此數據記錄
}
break;
default:
break;
}
}
主要是通過加入列的Name來識別所點擊的項.獲取所單擊行的各個Cell信息和值,參數e中有RowIndex和ColumnIndex.再通過DataGridView的Rows,Columns,Cells即可得到值。