protected override void OnMouseDown(MouseEventArgs e)
        {
            base.OnMouseDown(e);

            if (MouseDownWidget != null)
            {
                MouseDownWidget.OnMouseUp(e.Location);
                ConditionalRedrawWidget(MouseDownWidget);
            }

            if ((e.Button & MouseButtons.Left) != 0)
            {
                MouseDownWidget = FindWidget(e.Location);
            }
            else
            {
                MouseDownWidget = null;
            }

            if (MouseDownWidget != null)
            {
                MouseDownWidget.OnMouseDown(e.Location);
                ConditionalRedrawWidget(MouseDownWidget);
            }
        }
        protected override void OnMouseUp(MouseEventArgs e)
        {
            base.OnMouseUp(e);

            if (MouseDownWidget != null)
            {
                CustomListViewWidget Widget = MouseDownWidget;
                MouseDownWidget = null;

                Widget.OnMouseUp(e.Location);
                ConditionalRedrawWidget(Widget);
            }
        }