部分代码如下:
/*======= 删除 ========*/
private void btnDelete_Click_1(object sender, EventArgs e)
{
DialogResult dr = MessageBox.Show("确定删除吗?", "友情提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
if (dr == DialogResult.Yes)
{
//根据身份证号删除信息
string customerIDNumber = (dataGridView1.CurrentRow.Cells["CustomerIDNumber"].Value).ToString(); //获得选中行的 "身份证号码" 列.每次运行到这里的时候就会报错!!!!!!!!!!!!!
try
{
bool b = bll.DeleteCustomerInfoByCustomerIDNumber(customerIDNumber);
if (b)
{
//删除成功后进行刷新
List<CustomerInfo> list = bll.SelectCustomerInfo();
dataGridView1.DataSource = list;
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
这里我将报错位置另外提出来:
string customerIDNumber = (dataGridView1.CurrentRow.Cells["CustomerIDNumber"].Value).ToString(); //获得选中行的 身份证号码 列
恳请高手指教,多谢多谢!!!感激不尽!
6 个解决方案
#1
Cells[index]用索引试试。Cells[CustomerIDNumber所在列]
#2
未能找到名为 CustomerIDNumber 的列
#3
string customerIDNumber =
GridView.Rows(GridView.CurrentRow.Index).Cells(i).Value.ToString();
i 改为列名试一试,大小写等注意一下
#4
改为列名,是对的。
但是为什么写成[""]形式就不对呢?
我在网上见到,有这么写的。
#5
因为cell里德["string"],跟你绑定的列col["string"]里的string是两回事儿。
#6
问题解决了。datagradview窗体 -> 选择编辑列 -> Name -> 更改为你想要的string就可以用了。
感谢楼上。
感谢楼上。
#1
Cells[index]用索引试试。Cells[CustomerIDNumber所在列]
#2
未能找到名为 CustomerIDNumber 的列
#3
string customerIDNumber =
GridView.Rows(GridView.CurrentRow.Index).Cells(i).Value.ToString();
i 改为列名试一试,大小写等注意一下
#4
改为列名,是对的。
但是为什么写成[""]形式就不对呢?
我在网上见到,有这么写的。
#5
因为cell里德["string"],跟你绑定的列col["string"]里的string是两回事儿。
#6
问题解决了。datagradview窗体 -> 选择编辑列 -> Name -> 更改为你想要的string就可以用了。
感谢楼上。
感谢楼上。