列表视图项是否真的被取消选择?
Are ListviewItems ever truely deselected?
我有一个包含多个项目的列表视图。如果我选择了一个项目并单击空白 space 或表单上的其他任何地方,突出显示将被删除,但 .FocusedItem & .SelectedItems 仍然报告一个项目被选中。
我想在没有选择列表视图项时触发事件,但似乎从未发生过。我如何检测是否没有选择任何项目,或者在单击第一个项目后是否真的发生了这种情况?
Private Sub lstCats_SelectedIndexChanged(sender As Object, e As EventArgs) Handles lstCats.SelectedIndexChanged
If IsNothing(lstCats.FocusedItem) Then
DisableGUI()
Else
EnableGUI()
DisplayQuestions()
End If
End Sub
基本上DisableGUI()
永远不会执行。
谢谢!
您可以通过单击 ListView 控件的空白部分(不在其中一个项目上)来取消选择 ListView 中的所有项目。例如:
Private Sub lstCats_SelectedIndexChanged(sender As Object, e As EventArgs) Handles lstCats.SelectedIndexChanged
If lstCats.SelectedItems.Count = 0 Then
DisableGUI()
Else
EnableGUI()
DisplayQuestions()
End If
End Sub
注意如果你点击ListView中的一个item,SelectedItems会>0。如果你点击ListView的背景(不是在一个item上),SelectedItems会=0。这里假设有一部分不包含项目的 ListView 控件。
我有一个包含多个项目的列表视图。如果我选择了一个项目并单击空白 space 或表单上的其他任何地方,突出显示将被删除,但 .FocusedItem & .SelectedItems 仍然报告一个项目被选中。
我想在没有选择列表视图项时触发事件,但似乎从未发生过。我如何检测是否没有选择任何项目,或者在单击第一个项目后是否真的发生了这种情况?
Private Sub lstCats_SelectedIndexChanged(sender As Object, e As EventArgs) Handles lstCats.SelectedIndexChanged
If IsNothing(lstCats.FocusedItem) Then
DisableGUI()
Else
EnableGUI()
DisplayQuestions()
End If
End Sub
基本上DisableGUI()
永远不会执行。
谢谢!
您可以通过单击 ListView 控件的空白部分(不在其中一个项目上)来取消选择 ListView 中的所有项目。例如:
Private Sub lstCats_SelectedIndexChanged(sender As Object, e As EventArgs) Handles lstCats.SelectedIndexChanged
If lstCats.SelectedItems.Count = 0 Then
DisableGUI()
Else
EnableGUI()
DisplayQuestions()
End If
End Sub
注意如果你点击ListView中的一个item,SelectedItems会>0。如果你点击ListView的背景(不是在一个item上),SelectedItems会=0。这里假设有一部分不包含项目的 ListView 控件。