On Fri, 21 Mar 2008 02:32:01 -0700 (PDT), kimiraikkonen
<ki*************@gmail.comwrote:
>On Mar 21, 10:00 am, - HAL9000 <gu...@mail.orgwrote:
>I am trying to get an event when the drop-down Combo Box goes away /
reverts back to showing a single item.
For example, clicking the box's down arrow, to remove the drop-down
window, doesn't seem to generate any event. Not even a mouse event.
That seems a little odd.
Besides not finding a public event method, I can't seem to find a
protected method to over-ride either.
I am guessing I need to look for a message in ComboBox's WndProc().
But I don't know which message is the one I'm looking for.
Any ideas ?
Thanks...
DropDownClosed event of combobox must be what you're looking for.
Ahh, I see they added DropDownClosed() event for .net version 2. I
have to use version 1, so I can't use that.
That tip did lead me to the information I needed though (eg
CBN_CLOSEUP message):
http://groups.google.com/group/micro...74deef8895fc73
Changed that around a little to:
Protected Overrides Sub WndProc(ByRef m As
System.Windows.Forms.Message)
'WM_USER As Integer = &H400
'OCM__BASE As Integer = WM_USER + &H1C00
'WM_COMMAND As Integer = &H111
'OCM_COMMAND As Integer = OCM__BASE + WM_COMMAND
If m.Msg = (&H400 + &H111 + &H1C00) Then
Debug.WriteLine("WndProc Msg = " & Hex(m.Msg) & "h, LParam =
" & Hex(m.LParam.ToInt32) & "h, WParam = " & Hex(m.WParam.ToInt32) &
"h, HWnd = " & Hex(m.HWnd.ToInt32) & "h")
If (m.WParam.ToInt32 And &HF0000) = &H80000 Then
Debug.WriteLine("drop down window close message")
OnDropDownWindowClose(System.EventArgs.Empty)
End If
End If
MyBase.WndProc(m)
End Sub
Protected Overridable Sub OnDropDownWindowClose(ByVal e As
System.EventArgs)
RaiseEvent DropDownWindowClose(Me, e)
End Sub
Public Event DropDownWindowClose As EventHandler