问题描述:
我做了一个读取客户上传的EXCEL表然后把里面的电话号码提取出来的页面,因为客户提供的excel采用的是不同的模板,所以电话号码这列的位置不确定,想在gridview模板里加个按钮或者checkbutton,每一列加一个,当点击某列的按钮时自动判断当前是哪列并把里面的电话号码提取出来,用逗号分开。
现在的问题是:这种在标头加按钮的方法可以吗?可以的话如何实现。如图所示,不知道,大家能明白我的意思吗?说白了就是怎么能把不确定名称和位置的列里的电话号码读取出来。这个问题困扰我10几天了,问了30几个群,不知道是不是太简单了,也没人回答,倒是自己越来越怀疑自己了。
private void dataGridView1_ColumnHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e)
{
var r= MessageBox.Show("确定把此列当成电话号码导进数据库?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Error);
if (r == DialogResult.OK)
{
//导进
}
}
直接用列单击就可以实现了呀..通过列号把值导进去..
重载winform dataGridview中的构造方法,对标题行的内容进行重写。
思路是在每行加入一个hiddenfield里面记录这一行的id(其他的容器也可以不过要看不见的)
在提交的时候遍历gridview
通过findcontrol找到checkbox
判断他的select是否为true
如果为true
在通过findcontrol找到hiddenfield
获取id值
然后获取这行记录。。。。。。。。。。。。。。。