MouseWheelイベント内でイベントを処理済みにすることで実現可能です。
マウスホイールを無効化するサンプルコード
-
C#
/// <summary> /// フォームが初めて表示される直前に発生するイベント /// </summary> private void Form1_Load(object sender, EventArgs e) { // コンボボックス2にマウスホイールイベントを登録 this.ComboBox2.MouseWheel += new System.Windows.Forms.MouseEventHandler(this.ComboBox2_MouseWheel); } /// <summary> /// マウスホイールが動くと発生するイベント /// </summary> private void ComboBox2_MouseWheel(object sender, MouseEventArgs e) { // イベントを処理済みにし、選択値が変わらないようにする HandledMouseEventArgs eventArgs = e as HandledMouseEventArgs; eventArgs.Handled = true; }
-
VB.NET
''' <summary> ''' マウスホイールが動くと発生するイベント ''' </summary> Private Sub ComboBox2_MouseWheel(ByVal sender As Object, ByVal e As Windows.Forms.MouseEventArgs) Handles ComboBox2.MouseWheel ' イベントを処理済みにし、選択値が変わらないようにする Dim eventArgs As HandledMouseEventArgs = DirectCast(e, HandledMouseEventArgs) eventArgs.Handled = True End Sub
サンプルコードのダウンロード
サンプルコードの実行には Microsoft Visual Studio 2008 以上のバージョンが必要です。 2008以外のバージョンではプロジェクトを開いた際にファイルの変換が必要な場合があります。その場合は変換後に実行してください。検証環境
- Microsoft Visual Studio 2008 Version 9.0.30729.4462 QFE Edition: Professional
- Microsoft .NET Framework Version 3.5 SP1
- Microsoft Windows 7 Professional Service Pack 1 (Microsoft Windows NT 6.1 (7601))