If you are trying to capture the mouse wheel event in the WndProc of the
form, then you're right - when the focus is on the combobox the mousewheel
events dont seem to be passed to the form which is why they don't appear in
the WndProc of the form. However, the event is still fired since that is how
the selection is being changed. In order to eat up the mouse wheel events in
a combobox, you'll have to create a custom control that inherits from the
combobox (I'm not sure of "have to" but thats what I found working

).
Within the control, you can override the control's WndProc and eat up the
mouse wheel messages. Here's what my control looks like:
Public Class UserControl1
Inherits System.Windows.Forms.ComboBox
#Region " Windows Form Designer generated code "
Public Sub New()
MyBase.New()
'This call is required by the Windows Form Designer.
InitializeComponent()
'Add any initialization after the InitializeComponent() call
End Sub
'UserControl1 overrides dispose to clean up the component list.
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
If disposing Then
If Not (components Is Nothing) Then
components.Dispose()
End If
End If
MyBase.Dispose(disposing)
End Sub
'Required by the Windows Form Designer
Private components As System.ComponentModel.IContainer
'NOTE: The following procedure is required by the Windows Form Designer
'It can be modified using the Windows Form Designer.
'Do not modify it using the code editor.
<System.Diagnostics.DebuggerStepThrough()> Private Sub
InitializeComponent()
components = New System.ComponentModel.Container()
End Sub
#End Region
Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message)
Select Case m.Msg
Case &H20A
Debug.WriteLine("mouse wheel on combo")
Case Else
MyBase.WndProc(m)
End Select
End Sub
End Class
Just build a control class library containing this control. For testing
purposes, have your project and this control class library in the same
project and then add the control to your form from the designer (you should
see the new control under 'My User Controls' instead of 'Windows Forms' in
the toolbox). Just add a couple of items to the combo and run your project.
Try your mouse scroll on the user control and voila! you should have them
'eaten' up..
hope this helps..
Imran.