是否有一种方法可以在不将Enable属性设置为False的情况下禁用ListView。基本上,捕捉并忽略任何鼠标点击或键盘输入。 VB2013。VB.NET禁用ListView而不将Enable属性设置为false
0
A
回答
1
这里的另一种方法...
有ListView控件绘制自身的位图,并显示在PictureBox是采取的ListView的地方。交换两个控件必要的:
Public Class Form1
Private pbListView As PictureBox
Private ListViewDisabled As Boolean = False
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
If Not ListViewDisabled Then
pbListView = New PictureBox
Dim bmp As New Bitmap(ListView1.Size.Width, ListView1.Size.Height)
ListView1.DrawToBitmap(bmp, New Rectangle(0, 0, bmp.Width, bmp.Height))
pbListView.Image = bmp
pbListView.SizeMode = PictureBoxSizeMode.AutoSize
pbListView.Location = ListView1.Location
pbListView.Dock = ListView1.Dock
ListView1.Parent.Controls.Add(pbListView)
pbListView.BringToFront()
ListView1.Enabled = False
ListViewDisabled = True
Else
ListView1.Enabled = True
pbListView.Dispose()
ListViewDisabled = False
End If
End Sub
End Class
这将允许您禁用ListView控件,因此它不能获得焦点(注意键盘输入的),并且让图片框处理鼠标输入抑制。
如果你需要捕获ListView与当前焦点的项目,那么你将不得不采取一个实际的截图。但是,这可能会产生问题,因为其他窗口可能会遮挡窗口并被图像捕获。
相关问题
- 1. 将LinkLabel1.Enabled属性设置为false(vb.net)
- 2. 将禁用的属性设置为true或false switchery
- 3. mustUnderstand属性不只是设置为false。
- 4. EF 5将不会将IsIdentity的PK属性设置为false
- 5. UseCompatibleTextRendering属性时,它被设置为false
- 6. VB.NET:设置ServicePointManager.Expect100Continue = False
- 7. jQuery onchange事件不会将HTML的HTML禁用属性设为false
- 8. 即使disable属性设置为false,为什么Push Button被禁用?
- 9. vb.net控件设置属性
- 10. 不能在VB.Net中设置SeriesCollection.Values属性
- 11. 为GridView TemplateField禁用而不是Visible = false?
- 12. 将按钮可点击属性设置为false
- 13. Sharepoint - 无法将密封属性设置为False
- 14. Asp.Net MVC- Html.TextBoxFor - 将自动对焦属性设置为false
- 15. 如何将属性名称设置为false值
- 16. 获取将ModelState的IsValid设置为false的验证属性
- 17. VBA将“PrintObject”属性设置为false,内联代码
- 18. 将vRaptor 3与Tomcat UnpackWARs属性设置为false
- 19. 为什么将ScrollViewer.CanContentScroll设置为false禁用虚拟化
- 20. 将属性设置为com.google.appengine.api.datastore.Entity
- 21. 将属性设置为类
- 22. 将变量设置为数据属性值而不是NaN
- 23. 用vb.net来设置文件属性
- 24. 用户控件的Vb.Net设置属性
- 25. 为什么将html属性设置为false会将其视为意外标记?
- 26. 为什么评估函数将String设置为“false”而不是布尔false?
- 27. 提升C++属性 - 如果键不存在,则设置为false
- 28. ScriptManager在设置为false时不会承认LoadScriptsBeforeUI属性
- 29. 将文本框设置为Enable = false正在停止保存该值
- 30. 工具提示无法使用设置的按钮enable = false
删除事件处理程序或设置一个IgnoreStuff标志,当你退出子时它是真的,你不想要的东西发生 – Plutonix
删除事件处理程序不会抑制**默认的**行为的ListView。您必须通过从ListView继承或使用IMessageFilter将它们捕获来禁止鼠标事件和键盘事件。您还必须通过其他控件的Tab和/或Arrow键来防止ListView获得** focus **。 –