protected override void OnMouseDown(MouseEventArgs e)
        {
            MultiColumnComboPopupForm parent = this.Parent as MultiColumnComboPopupForm;

            if (parent != null && parent.closed)
            {
                return;
            }
            base.OnMouseDown(e);
        }
        public override bool OnMouseUp(MouseEventArgs e)
        {
            bool            flag1      = base.OnMouseUp(e);
            GridViewRowInfo currentRow = this.GridViewElement.Template.CurrentRow;
            bool            flag2      = this.oldCurrentRow != currentRow;

            if (currentRow != null)
            {
                GridRowElement rowElement = this.GridViewElement.TableElement.GetRowElement(currentRow);
                if (rowElement != null)
                {
                    flag2 |= rowElement.ControlBoundingRectangle.Contains(e.Location);
                }
            }
            if (flag2)
            {
                MultiColumnComboPopupForm parent = this.GridViewElement.ElementTree.Control.Parent as MultiColumnComboPopupForm;
                if (parent != null)
                {
                    RadMultiColumnComboBoxElement ownerElement = parent.OwnerElement as RadMultiColumnComboBoxElement;
                    ownerElement?.ClearFilter();
                    if (parent.CanClosePopup(RadPopupCloseReason.Mouse))
                    {
                        parent.ClosePopup(RadPopupCloseReason.Mouse);
                    }
                    if (currentRow != null && !currentRow.IsCurrent)
                    {
                        currentRow.IsCurrent = true;
                    }
                    if (ownerElement != null)
                    {
                        ownerElement.SetText(this.GridViewElement.Template.CurrentRow);
                        ownerElement.SelectAll();
                    }
                }
            }
            this.oldCurrentRow = (GridViewRowInfo)null;
            return(flag1);
        }