Exemple #1
0
        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;
            }
        }
        protected override void WndProc(ref Message message)
        {
            base.WndProc(ref message);

            switch (message.Msg)
            {
            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.RBN_HEIGHTCHANGE:
                    this.UpdateSize();
                    break;

                case NativeMethods.RBN_CHEVRONPUSHED:
                    this.NotifyChevronPushed(ref message);
                    break;
                }
            }
            break;
            }
        }