读书人

如何点了按钮之后没有反应

发布时间: 2013-04-05 10:24:33 作者: rapoo

怎么点了按钮之后没有反应
这是代码,实现删除datagridview里被勾选的项。点完之后没有任何反应,也不报错。

private void button6_Click(object sender, EventArgs e)
{
int selectedRows = dataGridView2.SelectedRows.Count;
for (int j = 0; j < selectedRows; j++)
{
try
{
if (dataGridView2.Rows[j].Cells["选择"].Value != null)
{
if (bool.Parse(dataGridView2.Rows[j].Cells["选择"].Value.ToString()) == true)
{
MessageBox.Show("123");
string DElsql = string.Format("Delete From Question Where QuestionID = {0}", Convert.ToInt32(dataGridView2.SelectedRows[0].Cells["题号"].Value));
conn.Open();
SqlCommand cmd = new SqlCommand(DElsql, conn);
cmd.ExecuteNonQuery();
conn.Close();
dataview();

}
}
}
catch (Exception ex)
{ MessageBox.Show(ex.Message); }

}
}
delete

datagridview checkedbox
[解决办法]
1、确定你点的button的click事件是否绑定到button6_Click
2、勾选不是通过dataGridView2.SelectedRows的集合来找,这个集合是选中行的集合,勾选你要根据勾选的列的值(bool类型)来判断是否勾选;
3、删除时循环不能从小往大循环,应从大往小循环,否则会报错
改成 for (int j =selectedRows-1; j>=0; j--)



你设个断点跟踪一下
[解决办法]
有没有选中的判断条件这样写应该有问题,从网上查查换中写法,加个断点一跟踪调试什么都明白了
[解决办法]
单步调试看看有没有进入这个事件里,然后再看看有没有进入for循环里;如果没进入就是你按钮事件没有。在按钮的事件中加入这个代码中的事件。
[解决办法]
遇到这种情况可以断定+逐步调式 ,也可以把那两个IF里面的东西拿出来在即时窗口输出看看是否是你想要的结果。

[解决办法]
会调试吗?,,,
[解决办法]

引用:
现在是“if (bool.Parse(dataGridView2.Rows[j].Cells["选择"].Value.ToString()) == true)”这句话报错该字符串未被识别为有效的布尔值。

那你看看 他是什么值

读书人网 >C#

热点推荐