protected override void WndProc(ref Message m)
            {
                if (m.Msg == Interop.WindowMessages.WM_REFLECT + Interop.WindowMessages.WM_NOTIFY)
                {
                    NativeMethods.NMHDR nmh = (NativeMethods.NMHDR)m.GetLParam(typeof(NativeMethods.NMHDR));
                    if (nmh.code == NativeMethods.NM_CUSTOMDRAW)
                    {
                        OnCustomDraw(ref m);
                        return;
                    }
                }

                base.WndProc(ref m);
            }
        protected override void WndProc(ref Message m)
        {
            switch (m.Msg)
            {
            case NativeMethods.WM_NOTIFY:
            case NativeMethods.WM_REFLECT + NativeMethods.WM_NOTIFY:
                NativeMethods.NMHDR nmhdr = (NativeMethods.NMHDR)Marshal.PtrToStructure(m.LParam, typeof(NativeMethods.NMHDR));
                if (nmhdr.code == NativeMethods.HDN_ENDTRACK)
                {
                    // Re-codegen if the columns have been resized
                    //
                    IComponentChangeService componentChangeService = (IComponentChangeService)GetService(typeof(IComponentChangeService));
                    componentChangeService.OnComponentChanged(Component, null, null, null);
                }
                break;
            }

            base.WndProc(ref m);
        }