点击DataGirdView的单元格实现增删改查。

    单纯的实现数据库的增删改查我想并不是什么难事,必须我们可以用DATAGRIDVIEW去显示,那么如何单击DATAGRIDVIEW的任意单元格的内容显示在其他控件里呢(比如文本框)?这似乎让人摸不着头脑。看了点资料,发现其实也很简单,关键是要知道这个控件的2点:

1.获得选中值的属性

比如我们的DatagirdView名为DGV,那么要获得当前鼠标点击的值,可以用DGV[0,DGV.CurrentCell.RowIndex].Value,其中第0第1列(自己可以以此类推),后一个参数是当前鼠标点击的行索引。

例如:"delete from tb_User where UserID=' " + Convert.ToString(dgvUInfo[0, dgvUInfo.CurrentCell.RowIndex].Value).Trim() + " ' "

当用C#操作数据库的SQL语句为上面的句子时,假设点击第5行,然后点删除按钮的时候,就会检索第五行第一列的ID号等于UserID字段下对应ID号的所有信息,并且删除。

2.点击任意单元格显示其内容,该事件为CellClick()

打开DGV的属性,点击闪电图标,找到该事件,双击编辑代码

例如,窗体上有四个文本框,希望用户点击表格的任意一行时可以显示该行的所有信息到这4个文本框内,那么可以首先连接数据库,然后执行SQL语句,建立适配器,填充DATASET,将得到的数据集绑定到DGV控件上,然后就可以编辑下面的代码了,将会出现我们之前想要的效果。

 private void DGV_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            txtBox1.Text = Convert.ToString(dgvUInfo[0, dgvUInfo.CurrentCell.RowIndex].Value).Trim();
           txtBox2.Text.Text = Convert.ToString(dgvUInfo[1, dgvUInfo.CurrentCell.RowIndex].Value).Trim();
           txtBox3.Text.Text = Convert.ToString(dgvUInfo[2, dgvUInfo.CurrentCell.RowIndex].Value).Trim();
            txtBox4.TextText = Convert.ToString(dgvUInfo[3, dgvUInfo.CurrentCell.RowIndex].Value).Trim();
        }

有关C#+数据库(ACCESS,SQL SERVER)可以参看我的其他文章,有详细的记录,这里只是写一些方法和思路。

你可能感兴趣的:(sql,数据库,server,C#,delete,dataset)