【发布时间】:2012-12-09 02:52:48
【问题描述】:
我的列表视图中有几个项目是复选框。
我设法在我的列表视图“ItemChecked”事件中使用了这段代码:
For Each item In lwSources.Items
If Not item.Index = e.Item.Index Then item.Checked = False
Next
问题在于它的反应不正确。例如,如果没有选择,我单击一次,该项目被正确选择。如果我尝试单击另一个项目(未选中),那么我检查的第一个项目将被取消选中,我必须再次单击以检查我当前想要的项目。
它需要比实际需要多 1 次点击...
【问题讨论】:
-
你能解释一下你在哪里加载/绑定你的列表框吗?因为在这里你正在检查列表框中的所有项目,所以当你检查第二个项目时,它将再次循环所有项目,这意味着第二次检查项目的索引与第一次检查项目不同,所以条件是真的,所以以前检查过的项目设置为未选中并选中第二项....
-
lwSources 列表视图中填充了从另一个对话框中选择的项目。根据我的选择,这些选定的项目将被添加到 lwSources
-
它只是循环遍历列表框中的所有项目
-
是否仍要选中上一个复选框?
-
不,我不希望仍选中前一个复选框。我希望复选框像单选按钮一样做出反应(因为单选按钮不能放在列表视图中)。
标签: vb.net listview checkbox radio-button