C# - how do I prevent mousewheel-scrolling in my combobox?

前端 未结 4 1830
小蘑菇
小蘑菇 2020-12-01 03:18

I have a combobox and I want to prevent the user from scrolling through the items with the mousewheel.

Is there an easy way to do that?

(C#, VS2008)

4条回答
  •  孤城傲影
    2020-12-01 04:09

    For WPF, handle the PreviewMouseWheel event instead.

    It would also be a good idea to consider ComboBox.IsDropDownOpen so the user can still use mouse scroll if there are a lot of items in the selection when the ComboBox is expanded.

    Another thing is to apply the same behavior across the whole application.

    I usually do all the above using the following code:

    App.xaml

    
        
    
    

    App.xaml.cs

    private void ComboBox_PreviewMouseWheel(object sender, System.Windows.Input.MouseWheelEventArgs e)
    {
        e.Handled = !((System.Windows.Controls.ComboBox)sender).IsDropDownOpen;
    }
    

提交回复
热议问题