C# 如何检查objectlistview c中的所有项目?
我正在WFA中使用创建一个复选框。 我希望有一个名为“全选”的按钮,用户可以单击它,并且只需单击一次即可选中所有行。 我一直在使用下面的代码,所有的复选框都会被选中C# 如何检查objectlistview c中的所有项目?,c#,winforms,checkbox,objectlistview,C#,Winforms,Checkbox,Objectlistview,我正在WFA中使用创建一个复选框。 我希望有一个名为“全选”的按钮,用户可以单击它,并且只需单击一次即可选中所有行。 我一直在使用下面的代码,所有的复选框都会被选中 private void btnSelectallModule_Click(object sender, EventArgs e) { foreach (ListViewItem item in dataListView1.Items) { item
private void btnSelectallModule_Click(object sender, EventArgs e)
{
foreach (ListViewItem item in dataListView1.Items)
{
item.Checked = true;
}
}
问题是,当我使用此按钮检查所有项目时,我将鼠标悬停在每个项目上,它将被自动取消选中,甚至不会单击该项目,这非常奇怪,因为我不打算在代码中这样做。
有人知道发生了什么事吗?我如何解决这个问题?
使用ObjectListView时,通常要感谢您
有一个方法dataListView1.CheckAll将完全执行您尝试执行的操作-检查所有项。使用该方法将正确设置OLV控件的内部检查状态,并防止在将鼠标悬停在项目上时视图刷新时从视觉上取消检查它们。是否将检查状态绑定到模型对象的属性?@Rev1.0 No,我没有这样做。可能会有帮助吗?通常在使用ObjectListView时不要操纵ListViewItem。我很确定有一个dataListView1.CheckAll方法。你试过了吗?@Rev1.0 dataListView1.CheckAll工作正常。这正是我所需要的,它没有我以前解释过的问题。非常感谢你。你帮了我很多。