天天看點

datagridview的按鈕列

這裡是自己做的修改和删除,點選修改時彈出修改窗體,點選删除時彈出"确認删除"的對話框.這裡主要是說明,如何在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即可得到值。

本文來自CSDN部落格,轉載請标明出處:http://blog.csdn.net/renyouprince/archive/2009/04/29/4136738.aspx