.net - VB.NET 当鼠标单击空字段时取消选择列表框中的项目

标签 .net vb.net

我有一个列表框 (mainlistbox),它列出了指定目录中的文件。当我在列表框中单击它们时,我会在 Richtextbox 中预览该文件。这工作得很好,但我试图弄清楚当我用鼠标单击列表框中的空白字段时如何取消选择主列表框中的项目。

Mainlistbox selectedindexchanged 的作用类似于如果文件存在,则 file.readalltext 到文本框。

我现在正在处理主列表框上的鼠标单击事件。

    Private Sub MainListBox_MouseClick(sender As Object, e As MouseEventArgs) Handles MainListBox.MouseClick

    If (MainListBox.SelectedIndex = -1) Then 'This is where I've tried "everything"
        MainListBox.ClearSelected()
end if

enter image description here

在我选择一个项目之前(使用 msgbox 进行测试),它似乎可以工作,但是在我选择一个项目之后,我无法取消选择它。 我尝试了很多变体,但无法让它发挥作用。这可能是一些非常简单的事情,我只是还没弄清楚。谢谢!

最佳答案

您可以通过鼠标抬起来检查是否单击了某个项目,如果没有清除您的数据:

Private Sub MainListBox_MouseUp(sender As Object, e As MouseEventArgs) Handles MainListBox.MouseUp
If MainListBox.IndexFromPoint(e.Location) < 0 Then
  ' clear the data
End If
End Sub

关于.net - VB.NET 当鼠标单击空字段时取消选择列表框中的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35361134/

相关文章:

.net - 创建静默安装程序

C# 这是 ReadOnlySpan<T> 的正确用法吗?

.net - 与 .net 和 mono 一起使用的最佳对象关系映射框架?

php - paypal支付成功后编辑数据库

vb.net - 无法将焦点设置在 Windows 窗体文本框上

C# 相等运算符覆盖(== 和 !=)

c# - Visual Studio 上的 Specflow 特征文件中没有颜色

vb.net - 如何使开放图链接与 301 重定向一起使用

VB.NET 重载 () 运算符

vb.net - 替换 vb.net 中的 "