Esempio n. 1
0
        public static void SetOptions(this GridView gridView, GridControlOption option)
        {
            gridView.RowHeight                        = option.RowHeight;
            gridView.ColumnPanelRowHeight             = option.ColumnPanelRowHeight;
            gridView.FocusRectStyle                   = option.FocusRectStyle;
            gridView.OptionsBehavior.Editable         = option.Editable;
            gridView.OptionsCustomization.AllowFilter = option.AllowFilter;
            //gridView.OptionsCustomization.AllowGroup = option.AllowGroup;
            gridView.OptionsSelection.EnableAppearanceFocusedCell = option.EnableAppearanceFocusedCell;
            //gridView.OptionsView.ColumnAutoWidth = option.ColumnAutoWidth;
            gridView.OptionsView.EnableAppearanceEvenRow = option.EnableAppearanceEvenRow;
            gridView.OptionsView.ShowFilterPanelMode     = option.ShowFilterPanelMode;
            gridView.OptionsView.ShowGroupPanel          = option.ShowGroupPanel;

            if (option.HeaderTextAlignCenter)
            {
                gridView.Appearance.HeaderPanel.Options.UseTextOptions = true;
                gridView.Appearance.HeaderPanel.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center;
            }
            if (option.CellTextAlignCenter)
            {
                gridView.Appearance.Row.Options.UseTextOptions = true;
                gridView.Appearance.Row.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center;
            }
            if (option.ShowRowIndex)
            {
                GridColumn rowIndexColumn = new GridColumn();
                rowIndexColumn.Caption = "序号";
                rowIndexColumn.Name    = "_xh";
                rowIndexColumn.OptionsColumn.AllowEdit  = false;
                rowIndexColumn.OptionsColumn.AllowFocus = false;
                rowIndexColumn.OptionsColumn.AllowMove  = false;
                rowIndexColumn.OptionsColumn.AllowSize  = false;
                rowIndexColumn.OptionsColumn.FixedWidth = true;
                //rowIndexColumn.OptionsColumn.ShowCaption = false;
                rowIndexColumn.OptionsFilter.AllowAutoFilter = false;
                rowIndexColumn.OptionsFilter.AllowFilter     = false;
                rowIndexColumn.UnboundType  = DevExpress.Data.UnboundColumnType.Integer;
                rowIndexColumn.Visible      = true;
                rowIndexColumn.VisibleIndex = 0;
                rowIndexColumn.Width        = option.RowIndexWidth;
                //rowIndexColumn.Fixed = DevExpress.XtraGrid.Columns.FixedStyle.Left;
                //rowIndexColumn.AppearanceCell.BackColor = Color.Red; //DevExpress.Utils.ColorUtils
                gridView.Columns.Insert(0, rowIndexColumn);
                gridView.CustomDrawCell += V_CustomDrawCell;
            }

            //取消默认选中第一行
            //会触发多次FocusedRowChanged事件 TODO
            //第一次加载完成
            gridView.GridControl.Load += (sender, e) =>
            {
                gridView.FocusedRowChanged             += V_FocusedRowChanged;
                gridView.GridControl.DataSourceChanged += (o, a) =>
                {
                    gridView.FocusInvalidRow();
                };
                gridView.FocusInvalidRow();
            };
        }
 public static void SetOptions(this GridControl grid, GridControlOption option)
 {
     foreach (var view in grid.ViewCollection)
     {
         if (view is GridView gridView)
         {
             gridView.SetOptions(option);
         }
     }
 }