protected override void WndProc(ref Message message)
{
base.WndProc(ref message);
switch (message.Msg)
{
case NativeMethods.WM_COMMAND + NativeMethods.WM_REFLECT:
int index = (int) message.WParam & 0xFFFF;
this.PerformClick(this.items[index]);
base.WndProc(ref message);
this.ResetMouseEventArgs();
break;
case NativeMethods.WM_MENUCHAR:
this.WmMenuChar(ref message);
break;
case NativeMethods.WM_NOTIFY:
case NativeMethods.WM_NOTIFY + NativeMethods.WM_REFLECT:
NativeMethods.NMHDR note = (NativeMethods.NMHDR) message.GetLParam(typeof(NativeMethods.NMHDR));
switch (note.code)
{
case NativeMethods.TTN_NEEDTEXTA:
NotifyNeedTextA(ref message);
break;
case NativeMethods.TTN_NEEDTEXTW:
NotifyNeedTextW(ref message);
break;
case NativeMethods.TBN_QUERYINSERT:
message.Result = (IntPtr) 1;
break;
case NativeMethods.TBN_DROPDOWN:
this.NotifyDropDown(ref message);
break;
case NativeMethods.NM_CUSTOMDRAW:
this.NotifyCustomDraw(ref message);
break;
case NativeMethods.TBN_HOTITEMCHANGE:
break;
}
break;
}
}