none
请教在VB.NET中,怎么样才能禁止combobox的值随鼠标中键的滚动而变化?

答案

  • Hi leon1526,

    你可以参考下面的代码

    Friend Class MyComboBox
        Inherits ComboBox
    
        Protected Overrides Sub OnMouseWheel(ByVal e As MouseEventArgs)
            Dim mwe As HandledMouseEventArgs = DirectCast(e, HandledMouseEventArgs)
            mwe.Handled = True
        End Sub
    End Class

    然后编译并且运行你的程序,在toolbox里面就会生成一个改写过滑轮事件combox,你再把它拖到窗口里面去,就可以了。

    希望我的回复对你有帮助。

    Best Regards,

    Hart


    Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.


    2016年12月7日 9:56
    版主

全部回复

  • 参考这里(C#版本,VB需要稍微改下代码)

    https://social.msdn.microsoft.com/Forums/vstudio/en-US/054c5847-7b85-4b3d-8db2-648ef15c719b/disable-mousewheel-in-combobox?forum=csharpgeneral

    1)  Add handler:

    comboBox1.MouseWheel += new MouseEventHandler(FormDetailedReport_MouseWheel);

    2) Overload handler like this:

    private void FormDetailedReport_MouseWheel(object sender, EventArgs e)
     
    {

     HandledMouseEventArgs ee = (HandledMouseEventArgs)e;

    if(ee!=null)

     ee.Handled = true;

     }


    专注于.NET ERP/CRM开发框架,C/S架构,SQL Server + ORM(LLBL Gen Pro) + Infragistics WinForms

    2016年12月6日 13:18
  • Hi leon1526,

    你可以参考下面的代码

    Friend Class MyComboBox
        Inherits ComboBox
    
        Protected Overrides Sub OnMouseWheel(ByVal e As MouseEventArgs)
            Dim mwe As HandledMouseEventArgs = DirectCast(e, HandledMouseEventArgs)
            mwe.Handled = True
        End Sub
    End Class

    然后编译并且运行你的程序,在toolbox里面就会生成一个改写过滑轮事件combox,你再把它拖到窗口里面去,就可以了。

    希望我的回复对你有帮助。

    Best Regards,

    Hart


    Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.


    2016年12月7日 9:56
    版主
  • 多谢3位的回复,按照你们的回复问题解决了,

    请问能否在datagridview中的下拉单元格实现相同的功能呢?我要不要新开一个贴?


    • 已编辑 leon1526 2016年12月7日 12:01 增加图片说明
    2016年12月7日 11:58
  • 多谢3位的回复,按照你们的回复问题解决了,

    请问能否在datagridview中的下拉单元格实现相同的功能呢?我要不要新开一个贴?


    你好,

    是需要开新帖的,根据MSDN论坛的规则,原始问题解决,需要发帖人及时标记答案,如果有新的问题,是需要重新开帖。

    我们的目标是一个帖子,解决一个问题。

    Best Regards,

    Hart


    Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.

    2016年12月8日 1:17
    版主
  • 多谢Hart!
    2016年12月8日 3:08