Exemplo n.º 1
0
        static internal Size GetPreferredSize(
            GridFilter gridFilter, GridColumn gridColumn)
        {
            Size size = Size.Empty;

            FilterEditType type = gridColumn.GetFilterPanelType();

            switch (type)
            {
                case FilterEditType.ComboBox:
                    if (_sizeComboBox == null)
                        _sizeComboBox = new ComboBoxEx();

                    _sizeComboBox.Font = gridFilter.GetEffectiveStyle(gridColumn).Font;

                    size = _sizeComboBox.GetPreferredSize(Size.Empty);
                    break;

                case FilterEditType.TextBox:
                case FilterEditType.DateTime:
                    if (_sizeTextBox == null)
                        _sizeTextBox = new TextBoxX();

                    _sizeTextBox.BorderStyle = BorderStyle.None;
                    _sizeTextBox.Font = gridFilter.GetEffectiveStyle(gridColumn).Font;

                    size = _sizeTextBox.GetPreferredSize(Size.Empty);
                    break;

                case FilterEditType.CheckBox:
                    if (_sizeCheckBox == null)
                        _sizeCheckBox = new MyCheckBoxX();

                    size = new Size(20, 20);
                    break;
            }

            return (size);
        }
Exemplo n.º 2
0
        static internal FilterPanel GetFilterPanel(GridColumn gridColumn)
        {
            FilterEditType type = gridColumn.GetFilterPanelType();

            if (type != FilterEditType.None)
            {
                GridFilter gridFilter = gridColumn.GridPanel.Filter;

                FilterPanel fp = GetFilterPanel(gridFilter, type);

                fp.GridFilter = gridFilter;
                fp.GridColumn = gridColumn;

                fp.Style = gridFilter.GetEffectiveStyle(gridColumn);

                fp.InitEditControl(type);

                return (fp);
            }

            return (null);
        }
Exemplo n.º 3
0
        private void RenderFilterContent(Graphics g,
            GridColumn column, FilterColumnHeaderVisualStyle style, Rectangle bounds)
        {
            switch (column.GetFilterPanelType())
            {
                case FilterEditType.CheckBox:
                    FilterPanel.RenderCheckBox(g, this, column, bounds);
                    break;

                default:
                    if (column.FilterValue != null || column.CanShowFilterExpr == true)
                    {
                        object value = column.FilterDisplayValue;

                        if (value != null)
                        {
                            string s = value is DateTime
                                           ? ((DateTime)value).ToString("d")
                                           : value.ToString();

                            RenderContent(g, column, s, style, bounds);
                        }
                    }
                    else if (column.FilterExpr != null)
                    {
                        string s = column.SuperGrid.FilterCustomString;

                        RenderContent(g, column, s, style, bounds);
                    }
                    break;
            }
        }