コード例 #1
0
 public GridDisplayColumn(string name, string displayName = "", MVCxGridViewColumnType columnType = MVCxGridViewColumnType.TextBox, int?width = 50, int?height = 100, int?editLayoutWidth = null, int?editLayoutHeight = null, bool isReadOnly = false, bool customizable = true, ErrorDisplayMode errorDisplayMode = ErrorDisplayMode.ImageWithTooltip, string displayFormat = "", bool isVisible = true, bool isWidthAndHeightInPercentage = true, object callBackRoute = null, Action <MVCxGridViewColumn> columnAction = null, GridCombo lookup = null, bool encodeHtml = true, int?groupIndex = null, DefaultBoolean allowHeaderFilter = DefaultBoolean.True, DefaultBoolean allowSort = DefaultBoolean.True, AutoFilterCondition autoFilterCondition = AutoFilterCondition.Contains, ColumnFilterMode filterMode = ColumnFilterMode.DisplayText, DefaultBoolean allowEditLayout = DefaultBoolean.True, int order = 0, ExpandoObject editorProperties = null) : base(name, displayName, columnType, width, height, isVisible, isWidthAndHeightInPercentage, allowEditLayout, order)
 {
     IsReadOnly          = isReadOnly;
     Customizable        = customizable;
     ErrorDisplayMode    = errorDisplayMode;
     DisplayFormat       = displayFormat;
     CallBackRoute       = callBackRoute;
     ColumnAction        = columnAction;
     Lookup              = lookup;
     EncodeHtml          = encodeHtml;
     GroupIndex          = groupIndex;
     AllowSort           = allowSort;
     AllowHeaderFilter   = allowHeaderFilter;
     AutoFilterCondition = autoFilterCondition;
     FilterMode          = filterMode;
     EditorProperties    = editorProperties;
     EditLayoutWidth     = editLayoutWidth ?? width;
     EditLayoutHeight    = editLayoutHeight ?? height;
     IsGridLookup        = (lookup != null && lookup is GridLookup);
 }
コード例 #2
0
        protected override CriteriaOperator CreateAutoFilterCriteria(String fieldName, AutoFilterCondition condition, Object value)
        {
            if (fieldName == "State")
            {
                var statusWrapper = (AddressStateWrapper)value;
                if (statusWrapper?.State == null)
                {
                    return(null);
                }

                return(new BinaryOperator(new OperandProperty(fieldName), new OperandValue((Int16)statusWrapper.State.Value), BinaryOperatorType.Equal));
            }
            return(base.CreateAutoFilterCriteria(fieldName, condition, value));
        }
コード例 #3
0
 /// <summary>
 /// 그리드에 컬럼을 추가합니다.
 /// </summary>
 /// <param name="Caption">컬럼캡션</param>
 /// <param name="Field">매핑필드명</param>
 /// <param name="ColumnType">컬럼타입</param>
 /// <param name="Width">컬럼 넒이.</param>
 /// <param name="Align">컬럼높이.</param>
 /// <param name="IsVisble">컬럼화면출력여부 <c>true</c> [is visble].</param>
 /// <param name="IsAllowEdit">컬럼수정가능여부 <c>true</c> [is allow edit].</param>
 /// <param name="IsAllowSort">컬럼소트여부.</param>
 /// <param name="FilterCondition">컬럼의 필터 속성을 지정합니다.</param>
 public void AddColumn(string Caption, string Field, _ColumnType ColumnType, int Width, _ColumnAlign Align, bool IsVisble, bool IsAllowEdit, DefaultBoolean IsAllowSort, AutoFilterCondition FilterCondition, bool IsAllowMove)
 {
     _GridView.Columns.Add(SetColumn(Caption, Field, ColumnType, Width, Align, IsVisble, IsAllowEdit, IsAllowSort, FilterCondition, IsAllowMove));
 }
コード例 #4
0
        /// <summary>
        /// Sets the column.
        /// </summary>
        /// <param name="strheader">The strheader.</param>
        /// <param name="strFieldsName">Name of the STR fields.</param>
        /// <param name="ct">The ct.</param>
        /// <param name="nWidth">Width of the n.</param>
        /// <param name="mAlign">The m align.</param>
        /// <param name="bVisible">if set to <c>true</c> [b visible].</param>
        /// <param name="IsAllowEdit">if set to <c>true</c> [is allow edit].</param>
        /// <param name="IsAllowSort">The is allow sort.</param>
        /// <returns></returns>
        private DevExpress.XtraGrid.Columns.GridColumn SetColumn(string strheader,
                                                                 string strFieldsName,
                                                                 _ColumnType ct,
                                                                 int nWidth,
                                                                 _ColumnAlign mAlign,
                                                                 bool bVisible,
                                                                 bool IsAllowEdit,
                                                                 DefaultBoolean IsAllowSort,
                                                                 AutoFilterCondition autoFilterCondition,
                                                                 bool IsAllowMove)
        {
            DevExpress.XtraGrid.Columns.GridColumn gc = new GridColumn();

            gc.Caption   = strheader;
            gc.FieldName = strFieldsName;
            gc.Name      = strFieldsName;
            gc.Width     = nWidth;
            //// 헤더 텍스트 옵션을 사용한다.
            gc.AppearanceHeader.Options.UseTextOptions = true;
            gc.OptionsColumn.AllowMerge = DefaultBoolean.False;

            // 셀 텍스트 옵션을 사용한다.
            gc.AppearanceCell.Options.UseTextOptions   = true;
            gc.AppearanceCell.TextOptions.VAlignment   = DevExpress.Utils.VertAlignment.Default;
            gc.AppearanceCell.TextOptions.HAlignment   = (DevExpress.Utils.HorzAlignment)mAlign;
            gc.AppearanceHeader.TextOptions.VAlignment = DevExpress.Utils.VertAlignment.Default;
            gc.AppearanceHeader.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center;

            gc.Visible = bVisible;
            gc.OptionsColumn.AllowEdit = IsAllowEdit;
            gc.OptionsColumn.AllowMove = IsAllowMove;
            gc.OptionsColumn.ReadOnly  = !IsAllowEdit;
            gc.OptionsColumn.AllowSort = IsAllowSort;
            gc.VisibleIndex            = bVisible ? iVisibleIndex++ : -1;

            gc.OptionsFilter.AllowAutoFilter = true;
            //gc.OptionsFilter.AllowFilter               = false;
            gc.OptionsFilter.AutoFilterCondition       = autoFilterCondition;
            gc.OptionsFilter.ImmediateUpdateAutoFilter = true;
            gc.AppearanceHeader.Font            = new System.Drawing.Font("굴림체", 9F);
            gc.AppearanceHeader.Options.UseFont = true;


            if (ct > 0)
            {
                switch (ct)
                {
                case _ColumnType.CheckBox:
                    if (this._GridControl != null)
                    {
                        mCheckBox = new RepositoryItemCheckEdit();
                        this._GridControl.RepositoryItems.Add(SetCheckBoxStyle(mCheckBox, CheckBoxStyle.StyleYN));
                        gc.ColumnEdit = mCheckBox;
                        //gc.OptionsColumn.AllowEdit= true;
                        //gc.OptionsColumn.ReadOnly  = false;
                    }
                    break;

                case _ColumnType.CheckBoxBit:
                    if (this._GridControl != null)
                    {
                        mCheckBox = new RepositoryItemCheckEdit();
                        this._GridControl.RepositoryItems.Add(SetCheckBoxStyle(mCheckBox, CheckBoxStyle.StyleBit));
                        gc.ColumnEdit = mCheckBox;
                        //gc.OptionsColumn.AllowEdit= true;
                        //gc.OptionsColumn.ReadOnly  = false;
                    }
                    break;

                case _ColumnType.Picture:
                    if (this._GridControl != null)
                    {
                        mPicture          = new RepositoryItemPictureEdit();
                        mPicture.SizeMode = DevExpress.XtraEditors.Controls.PictureSizeMode.Stretch;

                        this._GridControl.RepositoryItems.Add(mPicture);
                        gc.ColumnEdit = mPicture;
                        //gc.OptionsColumn.AllowEdit= true;
                        //gc.OptionsColumn.ReadOnly  = false;
                    }
                    break;

                case _ColumnType.Numbers:
                    gc.DisplayFormat.FormatType   = FormatType.Numeric;
                    gc.DisplayFormat.FormatString = "n0";
                    break;

                case _ColumnType.Dates:
                    gc.DisplayFormat.FormatType   = FormatType.DateTime;
                    gc.DisplayFormat.FormatString = "yyyy-MM-dd";

                    break;

                case _ColumnType.DateTime:
                    gc.DisplayFormat.FormatType   = FormatType.DateTime;
                    gc.DisplayFormat.FormatString = "yyyy-MM-dd HH:mm:ss";
                    break;

                case _ColumnType.ComboBox:

                    mComboBox = new RepositoryItemComboBox();
                    mComboBox.TextEditStyle = DevExpress.XtraEditors.Controls.TextEditStyles.DisableTextEditor;
                    this._GridControl.RepositoryItems.Add(mComboBox);
                    gc.ColumnEdit = mComboBox;
                    //gc.OptionsColumn.ReadOnly  = false;
                    //gc.OptionsColumn.AllowEdit= true;
                    break;

                case _ColumnType.doubles1:

                    gc.DisplayFormat.FormatType   = FormatType.Numeric;
                    gc.DisplayFormat.FormatString = "n1";
                    break;

                case _ColumnType.doubles2:

                    gc.DisplayFormat.FormatType   = FormatType.Numeric;
                    gc.DisplayFormat.FormatString = "n2";
                    break;

                case _ColumnType.TextEdit:
                    mTextEdit = new RepositoryItemTextEdit();
                    this._GridControl.RepositoryItems.Add(mTextEdit);
                    gc.ColumnEdit = mTextEdit;
                    //gc.OptionsColumn.ReadOnly  = false;
                    //gc.OptionsColumn.AllowEdit= true;
                    break;

                case _ColumnType.Amount:
                    gc.DisplayFormat.FormatType   = FormatType.Numeric;
                    gc.DisplayFormat.FormatString = "###,###";
                    break;

                case _ColumnType.LookUp:

                    mLookUp      = new RepositoryItemLookUpEdit();
                    mLookUp.Name = "LOOKUP_" + gc.FieldName;
                    //mLookUp.Properties.SearchMode  = DevExpress.XtraEditors.Controls.SearchMode.AutoComplete;
                    //mLookUp.Properties.AutoSearchColumnIndex = 0;
                    mLookUp.SearchMode            = DevExpress.XtraEditors.Controls.SearchMode.AutoComplete;
                    mLookUp.AutoSearchColumnIndex = 0;
                    this._GridControl.RepositoryItems.Add(mLookUp);
                    gc.ColumnEdit = mLookUp;
                    //gc.OptionsColumn.ReadOnly  = false;
                    //gc.OptionsColumn.AllowEdit= true;
                    break;

                case _ColumnType.Radio:
                    if (this._GridControl != null)
                    {
                        mRadio = new RepositoryItemRadioGroup();

                        this._GridControl.RepositoryItems.Add(mRadio);
                        gc.ColumnEdit = mRadio;
                        //gc.OptionsColumn.ReadOnly  = false;
                        //gc.OptionsColumn.AllowEdit= true;
                    }
                    break;

                case _ColumnType.RichEdit:
                    if (this._GridControl != null)
                    {
                        mRichEdit = new RepositoryItemRichTextEdit();
                        this._GridControl.RepositoryItems.Add(mRichEdit);
                        gc.ColumnEdit = mRichEdit;
                        //gc.OptionsColumn.ReadOnly  = false;
                        //gc.OptionsColumn.AllowEdit= true;
                    }
                    break;

                case _ColumnType.Button:
                    if (this._GridControl != null)
                    {
                        mBtn = new RepositoryItemButtonEdit();
                        mBtn.TextEditStyle   = DevExpress.XtraEditors.Controls.TextEditStyles.HideTextEditor;
                        mBtn.Buttons[0].Kind = DevExpress.XtraEditors.Controls.ButtonPredefines.Glyph;
                        //mBtn.Properties.Buttons[0].Caption = "확인";
                        mBtn.Properties.Buttons[0].Appearance.ForeColor = Color.Black;
                        this._GridControl.RepositoryItems.Add(mBtn);
                        gc.ColumnEdit = mBtn;
                        //gc.OptionsColumn.ReadOnly  = false;
                        //gc.OptionsColumn.AllowEdit= true;
                    }
                    break;

                case _ColumnType.DataTimepicker:
                    if (this._GridControl != null)
                    {
                        mDateEdit = new RepositoryItemDateEdit();
                        mDateEdit.EditFormat.FormatType      = FormatType.DateTime;
                        mDateEdit.DisplayFormat.FormatString = "yyyy-MM-dd";
                        mDateEdit.Appearance.ForeColor       = Color.Black;
                        this._GridControl.RepositoryItems.Add(mDateEdit);
                        gc.ColumnEdit = mDateEdit;
                        //gc.OptionsColumn.ReadOnly  = false;
                        //gc.OptionsColumn.AllowEdit= true;
                    }
                    break;

                case _ColumnType.Progressbar:
                    if (this._GridControl != null)
                    {
                        mProgressBar                         = new RepositoryItemProgressBar();
                        mProgressBar.ShowTitle               = true;
                        mProgressBar.ProgressViewStyle       = DevExpress.XtraEditors.Controls.ProgressViewStyle.Solid;
                        mProgressBar.PercentView             = true;
                        mProgressBar.ProgressKind            = DevExpress.XtraEditors.Controls.ProgressKind.Horizontal;
                        mProgressBar.NullText                = "0";
                        mProgressBar.Step                    = 1;
                        mProgressBar.EditFormat.FormatType   = FormatType.Numeric;
                        mProgressBar.EditFormat.FormatString = "n2";
                        this._GridControl.RepositoryItems.Add(mProgressBar);
                        gc.ColumnEdit = mProgressBar;
                        //gc.OptionsColumn.ReadOnly  = false;
                        //gc.OptionsColumn.AllowEdit= true;
                    }
                    break;

                default: break;
                }
            }

            return(gc);
        }
コード例 #5
0
        protected override CriteriaOperator CreateAutoFilterCriteria(string fieldName, AutoFilterCondition condition, object value)
        {
            if (condition == AutoFilterCondition.Equals)
            {
                return(base.CreateAutoFilterCriteria(fieldName, condition, value));
            }
            string strValue = value.ToString();

            if (string.IsNullOrEmpty(strValue))
            {
                return(null);
            }
            if (condition == AutoFilterCondition.Contains)
            {
                return(new FunctionOperator(FunctionOperatorType.Contains, new OperandProperty(fieldName), strValue));
            }
            else
            {
                return(new FunctionOperator(FunctionOperatorType.StartsWith, new OperandProperty(fieldName), strValue));
            }
        }