单击datagridview中的复选框时启用按钮?
Posted
技术标签:
【中文标题】单击datagridview中的复选框时启用按钮?【英文标题】:Enabling button when checkbox in datagridview is clicked? 【发布时间】:2018-02-21 01:37:53 【问题描述】:正如标题所示,我的代码旨在检测是否在 datagridview 上选中了至少一个复选框。如果有,将启用一个按钮。如果不是,则 enabled 属性变为 false。
public void validatecheck(object sender, DataGridViewCellEventArgs e)
var senderGrid = (DataGridView)sender;
if (senderGrid.Columns[e.ColumnIndex] is DataGridViewCheckBoxColumn && e.RowIndex >= 0)
foreach (DataGridViewRow row in dtgeducation.Rows)
if (Convert.ToBoolean(row.Cells[e.ColumnIndex].Value) == true)
btnaddclass.Enabled = true;
break;
else
btnaddclass.Enabled = false;
此代码仍然无法正常工作。也许我忽略了一个重要的部分。任何帮助是极大的赞赏。 :)
【问题讨论】:
我投票结束这个问题,因为“为什么这段代码不起作用?”问题与 *** 无关。 您是否使用调试器单步执行了代码?Not working
是什么意思?你有错误吗?你看到了什么意外的行为?你试过调试代码吗?
@ chetanranpariya不起作用,我的意思是在检查DataGridView中的一个复选框时不会启用按钮。没有错误警告或任何东西。我之前尝试使用 DataGridViewCheckboxCell 调试代码,但它几乎没有工作。勉强,它指的是该复选框仅在有限的时间内起作用。如果多次单击该复选框,则该按钮将永久禁用。
【参考方案1】:
我会将视图模型中的 bool 属性绑定到复选框上的 IsChecked 属性,然后分配该属性的值以更新按钮的 Enabled 属性。
【讨论】:
以上是关于单击datagridview中的复选框时启用按钮?的主要内容,如果未能解决你的问题,请参考以下文章