/// <summary>設定Grid-ComboBox </summary> /// <param name="column"></param> /// <param name="valueField"></param> /// <param name="textField"></param> /// <param name="dataSource"></param> public static void SetComboBox(MVCxGridViewColumn column, string valueField, string textField, object dataSource) { column.EditorProperties().ComboBox( p => { p.TextField = textField; p.ValueField = valueField; p.DataSource = dataSource; }); }
/// <summary>Column基本設定</summary> /// <param name="column"></param> /// <param name="fieldName"></param> /// <param name="caption"></param> /// <param name="showEditorInBatchEditMode"></param> public static void SetColumns(MVCxGridViewColumn column, string fieldName, string caption, bool showEditorInBatchEditMode = true) { column.FieldName = fieldName; column.Caption = caption; column.Settings.ShowEditorInBatchEditMode = showEditorInBatchEditMode; if (!showEditorInBatchEditMode) { column.CellStyle.BackColor = System.Drawing.Color.Beige; } }
private static void SetNewColumn(MVCxGridViewColumn column, AvrViewColumn col, PdfExportHelper pdfHelper) { column.Name = col.UniquePath; column.FieldName = col.UniquePath; column.HeaderStyle.CssClass = "gridColumnHeader"; // link to datasource if (!col.IsAggregate) { if (col.FieldType == typeof(DateTime)) { column.ColumnType = MVCxGridViewColumnType.DateEdit; column.PropertiesEdit.DisplayFormatString = "d"; //col.PrecisionStringWeb; } else //if (col.FieldType == typeof(string)) { column.ColumnType = MVCxGridViewColumnType.TextBox; if (col.FieldType.IsNumeric() && !String.IsNullOrEmpty(col.PrecisionStringWeb)) { column.PropertiesEdit.DisplayFormatString = col.PrecisionStringWeb; } } // sorting if (col.SortOrder.HasValue && col.SortOrder.Value >= 0) { column.SortOrder = col.IsSortAscending ? ColumnSortOrder.Ascending : ColumnSortOrder.Descending; column.SortIndex = col.SortOrder.Value; } } else { // field type column.ColumnType = MVCxGridViewColumnType.TextBox; column.PropertiesEdit.DisplayFormatString = String.IsNullOrEmpty(col.PrecisionStringWeb) ? "" : col.PrecisionStringWeb; // sorting // aggregate columns are unsortable column.Settings.AllowSort = DefaultBoolean.False; } column.Caption = pdfHelper.ProcessString(col.DisplayText); column.ReadOnly = true; // filtration column.Settings.HeaderFilterMode = HeaderFilterMode.List;//CheckedList // visability column.Visible = col.IsVisible; // freesing column.FixedStyle = col.IsFreezed ? GridViewColumnFixedStyle.Left : GridViewColumnFixedStyle.None; // width column.MinWidth = 30; column.Width = Unit.Pixel(col.ColumnWidth); column.CellStyle.HorizontalAlign = HorizontalAlign.Center; }
/// <summary> /// Устанавливает настройки для колонки с периодом. /// </summary> /// <param name="column">Колонка.</param> /// <param name="token">Токен безопасности.</param> public static void SetDatePeriod(this MVCxGridViewColumn column, SecurityToken token) { column.ColumnType = MVCxGridViewColumnType.DateEdit; var dateEditProperties = column.PropertiesEdit as DateEditProperties; dateEditProperties.SetDefaultProperties(token); column.Settings.AllowHeaderFilter = DefaultBoolean.True; column.PropertiesEdit.DisplayFormatString = "d"; column.SettingsHeaderFilter.Mode = GridHeaderFilterMode.DateRangePicker; column.Settings.AllowAutoFilter = DefaultBoolean.False; }
/// <summary>設定Grid-Textbox</summary> /// <param name="i"></param> /// <param name="displayFormatString"></param> public static void SetTextBox(MVCxGridViewColumn column, string displayFormatString) { column.EditorProperties().TextBox( p => { if (!string.IsNullOrWhiteSpace(displayFormatString)) { p.DisplayFormatString = displayFormatString; } }); }
public static void Grid_ClientLayout(object s, ASPxClientLayoutArgs e) { MVCxGridView grid = (MVCxGridView)s; var viewModel = GetModelFromSession(grid); if (e.LayoutMode == ClientLayoutMode.Saving && viewModel != null) { bool bSortChanged = false; foreach (GridViewColumn column in grid.AllColumns) { if (column is MVCxGridViewColumn) { MVCxGridViewColumn MVCcolumn = (MVCxGridViewColumn)column; var col = viewModel.ViewHeader.GetColumnByOriginalName(MVCcolumn.FieldName); if (col != null) { col.IsVisible = MVCcolumn.Visible; if ((!col.SortOrder.HasValue && MVCcolumn.SortIndex != -1) || (col.SortOrder.HasValue && col.SortOrder.Value != MVCcolumn.SortIndex) || (col.SortOrder.HasValue && col.IsSortAscending == (MVCcolumn.SortOrder == ColumnSortOrder.Descending)) ) { bSortChanged = true; } col.SortOrder = MVCcolumn.SortIndex; col.IsSortAscending = !(MVCcolumn.SortOrder == ColumnSortOrder.Descending); col.ColumnFilter = ((GridViewDataColumn)MVCcolumn).FilterExpression; col.ColumnWidth = MVCcolumn.Width.IsEmpty ? AvrView.DefaultFieldWidth : (int)MVCcolumn.Width.Value; } } else if (column is MVCxGridViewBandColumn) { MVCxGridViewBandColumn MVCband = (MVCxGridViewBandColumn)column; var band = viewModel.ViewHeader.GetBandByOriginalName(MVCband.Name); if (band != null) { band.IsVisible = MVCband.Visible; } } } if (bSortChanged) { viewModel.ViewHeader.GetAggregateColumnsList().ForEach(c => AggregateCasheWeb.FillAggregateColumn(viewModel.ViewData, c, viewModel.ViewHeader.GetSortExpression())); } } else { } }
public static GridViewSettings <TModel> GetGridViewSetting <TModel>(ECOM.Models.GridViewConfig gridConfig, bool IsGenerateColumn = true) { var gridViewSettings = new GridViewSettings <TModel>(); gridViewSettings.Name = gridConfig.GridViewName; gridViewSettings.KeyFieldName = gridConfig.KeyFieldName; gridViewSettings.SettingsPager.PageSize = gridConfig.PageSize; gridViewSettings.CallbackRouteValues = gridConfig.CallbackRouteValues; gridViewSettings.CustomActionRouteValues = gridConfig.CustomActionRouteValues; gridViewSettings.SettingsPager.Position = System.Web.UI.WebControls.PagerPosition.TopAndBottom; gridViewSettings.SettingsPager.FirstPageButton.Visible = true; gridViewSettings.SettingsPager.LastPageButton.Visible = true; gridViewSettings.SettingsPager.PageSizeItemSettings.Visible = true; //gridViewSettings.Settings.HorizontalScrollBarMode = ScrollBarMode.Auto; gridViewSettings.Width = System.Web.UI.WebControls.Unit.Percentage(100); gridViewSettings.Height = System.Web.UI.WebControls.Unit.Percentage(100); gridViewSettings.SettingsBehavior.ColumnResizeMode = ColumnResizeMode.Control; gridViewSettings.CommandColumn.Visible = true; gridViewSettings.CommandColumn.ShowClearFilterButton = true; gridViewSettings.Settings.ShowFilterRow = true; gridViewSettings.Settings.ShowFilterRowMenu = true; gridViewSettings.SettingsPager.PageSizeItemSettings.Items = new string[] { "10", "25", "50", "100" }; gridViewSettings.SettingsBehavior.AllowFocusedRow = true; //Selected Row gridViewSettings.Settings.HorizontalScrollBarMode = ScrollBarMode.Auto; //gridViewSettings.Settings.VerticalScrollBarMode = ScrollBarMode.Auto; gridViewSettings.ControlStyle.CssClass = "grid-view-custom"; if (IsGenerateColumn) { foreach (var item in gridConfig.Columns) { MVCxGridViewColumn cloumn = gridViewSettings.Columns.Add(); cloumn.FieldName = item.ColumnName; cloumn.Caption = item.DisplayText; cloumn.Visible = item.Enable; } } return(gridViewSettings); }
public static void GetBasicColumnProperty(ref MVCxGridViewColumn column, string tb_NM, string col_NM, ColumnType type = ColumnType.None, int?width = null, bool isVisible = true) { column.FieldName = col_NM; var nm = col_NM; switch (type) { case ColumnType.Date: nm = col_NM.Replace("dt", ""); column.PropertiesEdit.DisplayFormatString = "yyyy/MM/dd"; break; } //column.Caption = DDMHelper.GetColName(tb_NM, nm); if (width.HasValue) { column.Width = width.Value; } column.Visible = isVisible; }
private static void SetProperties(this MVCxGridViewColumn gcol, GridDisplayColumn columnInfo) { gcol.Settings.AllowSort = columnInfo.AllowSort; gcol.Settings.FilterMode = columnInfo.FilterMode; gcol.Settings.AllowHeaderFilter = columnInfo.AllowHeaderFilter; gcol.Settings.AutoFilterCondition = columnInfo.AutoFilterCondition; gcol.ReadOnly = columnInfo.IsReadOnly; gcol.EditFormSettings.Visible = columnInfo.AllowEditLayout; gcol.Hide(!columnInfo.IsVisible); gcol.Settings.ShowEditorInBatchEditMode = !columnInfo.IsReadOnly; if (columnInfo.IsReadOnly) { gcol.EditFormSettings.Visible = DefaultBoolean.False; } gcol.ShowInCustomizationForm = columnInfo.Customizable; if (columnInfo.GroupIndex.HasValue) { gcol.GroupIndex = columnInfo.GroupIndex.Value; } }
public static void Hide(this MVCxGridViewColumn gcol, bool hide) { if (hide) { gcol.CellStyle.CssClass = HideCellCSSName; gcol.HeaderStyle.CssClass = HideCellCSSName; gcol.FooterCellStyle.CssClass = HideCellCSSName; gcol.GroupFooterCellStyle.CssClass = HideCellCSSName; gcol.FilterCellStyle.CssClass = HideCellCSSName; gcol.Settings.ShowEditorInBatchEditMode = false; gcol.BatchEditModifiedCellStyle.CssClass = HideCellCSSName; gcol.EditFormSettings.Visible = DefaultBoolean.False; } else { gcol.CellStyle.CssClass = string.Empty; gcol.HeaderStyle.CssClass = string.Empty; gcol.FooterCellStyle.CssClass = string.Empty; gcol.GroupFooterCellStyle.CssClass = string.Empty; gcol.FilterCellStyle.CssClass = string.Empty; gcol.BatchEditModifiedCellStyle.CssClass = string.Empty; gcol.EditFormSettings.Visible = DefaultBoolean.True; } }
public static GridViewSettings GetGridSettings(string action, string reportName) { var settings = new GridViewSettings(); settings.Name = "GridView"; settings.CallbackRouteValues = new { Controller = "Home", Action = "_" + action }; settings.Width = System.Web.UI.WebControls.Unit.Percentage(100); // Export-specific settings settings.SettingsExport.ExportSelectedRowsOnly = false; //settings.SettingsExport. = "Report.pdf"; //settings.SettingsExport.PageHeader = new DevExpress.Web.GridViewExporterHeaderFooter; settings.SettingsExport.PageHeader.Center = BusinessLogic.Home.TranslateWord.GetWord(reportName); settings.SettingsExport.PageHeader.Font.Name = "segoe ui"; settings.SettingsExport.PageHeader.Font.Size = 14; // settings.SettingsExport.Landscape = MySession.Current.MySetting.IsPageLandscape; settings.SettingsExport.Styles.Cell.Font.Size = 10; settings.SettingsExport.FileName = DateTime.Now.Day.ToString() + "." + DateTime.Now.Month.ToString() + "." + DateTime.Now.Year.ToString() + ".pdf"; settings.SettingsExport.PaperKind = System.Drawing.Printing.PaperKind.A4; //settings.SettingsPager.Mode = GridViewPagerState.ShowAllRecords; switch (action) { case "GridViewWorks": settings.KeyFieldName = "id"; settings.Columns.Add(nameof(Database.Work.name), "Denumire"); settings.Columns.Add(nameof(Database.Work.date_start), "Data început").PropertiesEdit.DisplayFormatString = Const.DateTimeFormat; settings.Columns.Add(nameof(Database.Work.date_end), "Data finisării").PropertiesEdit.DisplayFormatString = Const.DateTimeFormat; settings.Columns.Add(nameof(Database.Work.surface_work), "Cantitatea"); settings.Columns.Add(c => { c.FieldName = nameof(Database.Work.unit_id); c.Caption = "Unitate"; c.EditorProperties().ComboBox(p => { p.TextField = "Name"; p.ValueField = "Id"; p.ValueType = typeof(int); p.DataSource = MySession.Current.Units; }); }); settings.Columns.Add(nameof(Database.Work.unit_price), "Preț unitate"); MVCxGridViewColumn column = settings.Columns.Add("Total"); column.UnboundType = DevExpress.Data.UnboundColumnType.Decimal; settings.CustomUnboundColumnData = (sender, e) => { if (e.Column.FieldName == "Total") { decimal price = MyConvert.ToDecimal(e.GetListSourceFieldValue(nameof(Database.Work.unit_price_worker)).ToString()); decimal surface = MyConvert.ToDecimal(e.GetListSourceFieldValue(nameof(Database.Work.surface_work)).ToString()); e.Value = price * surface; } }; settings.TotalSummary.Add(DevExpress.Data.SummaryItemType.Sum, "Total"); settings.Settings.ShowFooter = true; break; case "GridViewMaterial": settings.KeyFieldName = "id"; settings.Columns.Add(nameof(Database.ObjectMaterial.material_description), "Denumire material"); settings.Columns.Add(nameof(Database.ObjectMaterial.buyed_date), "Data procurării").PropertiesEdit.DisplayFormatString = Const.DateTimeFormat; settings.Columns.Add(nameof(Database.ObjectMaterial.quantity), "Cantitatea"); MVCxGridViewColumn col = settings.Columns.Add("Preț total"); col.UnboundType = DevExpress.Data.UnboundColumnType.Decimal; settings.CustomUnboundColumnData = (sender, e) => { if (e.Column.FieldName == "Preț total") { decimal price = MyConvert.ToDecimal( e.GetListSourceFieldValue(nameof(Database.ObjectMaterial.unit_price)).ToString()); decimal quantity = MyConvert.ToDecimal( e.GetListSourceFieldValue(nameof(Database.ObjectMaterial.quantity)).ToString()); e.Value = price * quantity; } }; settings.TotalSummary.Add(DevExpress.Data.SummaryItemType.Sum, "Preț total"); settings.Settings.ShowFooter = true; break; case "GridViewExtra": settings.KeyFieldName = "id"; settings.Columns.Add(nameof(Database.ObjectExtra.description), "Descrierea"); settings.Columns.Add(nameof(Database.ObjectExtra.create_date), "Data creării").PropertiesEdit.DisplayFormatString = Const.DateTimeFormat; settings.Columns.Add(nameof(Database.ObjectExtra.price), "Prețul"); settings.TotalSummary.Add(DevExpress.Data.SummaryItemType.Sum, nameof(Database.ObjectExtra.price)); settings.Settings.ShowFooter = true; break; case "GridViewInstrument": settings.KeyFieldName = "id"; settings.Columns.Add(nameof(Database.ObjectInstrument.model), "Model"); settings.Columns.Add(nameof(Database.ObjectInstrument.first_day), "Data împrumut").PropertiesEdit.DisplayFormatString = Const.DateTimeFormat; settings.Columns.Add(nameof(Database.ObjectInstrument.last_day), "Data predării").PropertiesEdit.DisplayFormatString = Const.DateTimeFormat; settings.Columns.Add(nameof(Database.ObjectInstrument.quantity), "Cantitatea"); settings.Columns.Add(nameof(Database.ObjectInstrument.total_price), "Preț total"); settings.Columns.Add(nameof(Database.ObjectInstrument.responsabile_person), "Responsabil"); settings.TotalSummary.Add(DevExpress.Data.SummaryItemType.Sum, nameof(Database.ObjectInstrument.total_price)); settings.Settings.ShowFooter = true; break; case "GridViewPayments": settings.KeyFieldName = nameof(Database.WorkerPayment.id); settings.Columns.Add(nameof(Database.WorkerPayment.payment_date), Const.PaymentDate); settings.Columns.Add(nameof(Database.WorkerPayment.payment_type), Const.PaymentType); settings.Columns.Add(c => { c.FieldName = nameof(Database.WorkerPayment.payment_type); c.Caption = "Tip Achitare"; c.EditorProperties().ComboBox(p => { p.DataSource = MySession.Current.PaymentTypes; p.TextField = "Value"; p.ValueField = "Key"; p.ValueType = typeof(string); }); }); //settings.Columns.Add(nameof(Database.WorkerPayment.work_id), Const.Work); settings.Columns.Add(c => { c.FieldName = nameof(Database.WorkerPayment.work_id); c.Caption = Const.Work; c.EditorProperties().ComboBox(p => { p.TextField = nameof(Database.Work.name); p.ValueField = "Id"; p.ValueType = typeof(int); p.DataSource = MySession.Current.Works; }); }); settings.Columns.Add(nameof(Database.WorkerPayment.amount), Const.Amount); settings.TotalSummary.Add(DevExpress.Data.SummaryItemType.Sum, nameof(Database.WorkerPayment.amount)); settings.Settings.ShowFooter = true; break; } return(settings); }
/// <summary>設定Column加總</summary> /// <param name="settings"></param> /// <param name="helper"></param> /// <param name="column"></param> public static void SetColumnSummary(GridViewSettings settings, HtmlHelper helper, MVCxGridViewColumn column) { column.UnboundType = DevExpress.Data.UnboundColumnType.Decimal; ASPxSummaryItem summaryItem = new ASPxSummaryItem(column.FieldName, DevExpress.Data.SummaryItemType.Sum); summaryItem.Tag = column.FieldName + "_Sum"; summaryItem.DisplayFormat = "<strong>{0}</strong>"; settings.TotalSummary.Add(summaryItem); column.SetFooterTemplateContent(c => { helper.DevExpress().Label(lbSettings => { lbSettings.Name = "label" + column.FieldName; lbSettings.Properties.EnableClientSideAPI = true; ASPxSummaryItem summaryItem1 = c.Grid.TotalSummary.First(i => i.Tag == (column.FieldName + "_Sum")); if (c.Grid.GetTotalSummaryValue(summaryItem1) != null) { lbSettings.Text = c.Grid.GetTotalSummaryValue(summaryItem1).ToString(); } else { lbSettings.Text = ""; } }).Render(); }); settings.Settings.ShowFooter = true; }
/// <summary> /// Устанавливает настройки для колонки с числами. /// </summary> /// <param name="column">Колонка.</param> /// <param name="token">Токен безопасности.</param> public static void SetNumeric(this MVCxGridViewColumn column, SecurityToken token) { column.ColumnType = MVCxGridViewColumnType.SpinEdit; column.PropertiesEdit.DisplayFormatString = "#.00"; }
public static void Configure(this GridViewSettings gridSettings, GridData gridData, HtmlHelper html, ViewContext viewContext, GridSettingOptions gridSettingOptions = null, params string[] arguments) { gridSettings.Width = Unit.Percentage(100); gridSettings.Height = Unit.Percentage(100); if (gridSettingOptions == null) { gridSettingOptions = new GridSettingOptions(); } gridSettings.Settings.HorizontalScrollBarMode = gridSettingOptions.HorizontalScrollBarMode; gridSettings.Settings.VerticalScrollBarMode = gridSettingOptions.VerticalScrollBarMode; if (gridSettingOptions.VerticalScrollableHeight.HasValue) { gridSettings.Settings.VerticalScrollableHeight = gridSettingOptions.VerticalScrollableHeight.Value; } //Grid Specific configurations gridSettings.KeyFieldName = gridData.Key; gridSettings.Name = $"{gridData.Name}"; gridSettings.Styles.Header.Wrap = DefaultBoolean.True; gridSettings.SettingsExport.EnableClientSideExportAPI = true; gridSettings.SettingsExport.ExcelExportMode = DevExpress.Export.ExportType.DataAware; if (gridSettingOptions.ShowTitle) { gridSettings.Settings.ShowTitlePanel = true; gridSettings.SettingsText.Title = gridData.Title; } else { gridSettings.Caption = gridData.Title; } if (gridData.GroupSetting != null) { gridSettings.SettingsBehavior.AutoExpandAllGroups = gridData.GroupSetting.AutoExpandAllGroups; gridSettings.SettingsBehavior.MergeGroupsMode = gridData.GroupSetting.GroupMode; if (gridData.GroupSetting.GroupFormatForMergedGroup != null) { gridSettings.Settings.GroupFormatForMergedGroup = gridData.GroupSetting.GroupFormatForMergedGroup; } if (gridData.GroupSetting.MergedGroupSeparator != null) { gridSettings.Settings.MergedGroupSeparator = gridData.GroupSetting.MergedGroupSeparator; } } gridSettings.Styles.AlternatingRow.BackColor = gridData.AlternateRowColor; #region Configure Toolbars if (gridData.ToolBarOptions.Show) { gridSettings.AddToolBar(html, viewContext, gridData); } #endregion #region Configure Columns foreach (var col in gridData.DisplayColumns.OrderBy(c => c.Order)) { if (col.ColumnAction != null) { gridSettings.Columns.Add(col.ColumnAction); var lcol = gridSettings.Columns[col.Name] as MVCxGridViewColumn; lcol.Hide(!col.IsVisible); continue; } MVCxGridViewColumn gcol = gridSettings.Columns.Add(col.Name, col.DisplayName, col.ColumnType); gcol.Set(col); } #endregion #region Configure Callback Route if (gridData.CallBackRoute != null) { gridSettings.CallbackRouteValues = gridData.CallBackRoute; } #endregion #region Configure Buttons foreach (var btn in gridData.Buttons) { gridSettings.AddButton(btn.Type, btn.Display); } #endregion if (gridData.ButtonOptions != null) { gridSettings.CommandColumn.Visible = gridData.ButtonOptions.Show; gridSettings.CommandColumn.ShowNewButtonInHeader = gridData.ButtonOptions.DisplayAddButtonInGridHeader; gridSettings.CommandColumn.ShowNewButton = gridData.ButtonOptions.DisplayAddButton; gridSettings.CommandColumn.ShowCancelButton = gridData.ButtonOptions.DisplayCancelButton; gridSettings.CommandColumn.ShowEditButton = gridData.ButtonOptions.DisplayEditButton; gridSettings.CommandColumn.ShowUpdateButton = gridData.ButtonOptions.DisplayUpdateButton; gridSettings.CommandColumn.ShowDeleteButton = gridData.ButtonOptions.DisplayDeleteButton; gridSettings.CommandColumn.Width = Unit.Percentage(gridData.ButtonOptions.Width); } gridSettings.CommandColumn.Width = 70; gridSettings.CommandColumn.Caption = " "; #region Configure Routes foreach (var route in gridData.Routes) { gridSettings.AddRoutes(route.Type, route.Route); } #endregion #region Configure Layout gridSettings.BuildEditLayout(gridData.FormLayout); #endregion gridSettings.SettingsBehavior.ConfirmDelete = true; gridSettings.SettingPaging(gridData); if (gridData.RowInitializeEvent != null) { gridSettings.InitNewRow = gridData.RowInitializeEvent; } if (gridData.RowEditEvent != null) { gridSettings.CellEditorInitialize = gridData.RowEditEvent; } //settings.SetupGlobalGridViewBehavior(); }
public static void Set(this MVCxGridViewColumn gcol, GridDisplayColumn columnInfo) { gcol.SetProperties(columnInfo); //Default Value will be used as EmptyLayoutItem switch (columnInfo.ColumnType) { case MVCxGridViewColumnType.TimeEdit: if (columnInfo.Width.HasValue) { gcol.Width = (!columnInfo.IsWidthAndHeightInPercentage) ? columnInfo.Width.Value : Unit.Percentage(columnInfo.Width.Value); } gcol.EditorProperties().TimeEdit(s => { s.EditFormat = EditFormat.Custom; if (!string.IsNullOrEmpty(columnInfo.DisplayFormat)) { s.EditFormatString = columnInfo.DisplayFormat; s.DisplayFormatString = columnInfo.DisplayFormat; } s.ValidationSettings.ErrorDisplayMode = ErrorDisplayMode.ImageWithTooltip; s.ValidationSettings.Display = Display.Dynamic; s.ValidationSettings.SetFocusOnError = true; s.NullDisplayText = ""; //s.Height = (!columnInfo.IsWidthAndHeightInPercentage) ? columnInfo.EditLayoutHeight : Unit.Percentage(columnInfo.EditLayoutHeight); if (columnInfo.EditLayoutWidth.HasValue) { s.Width = (!columnInfo.IsWidthAndHeightInPercentage) ? columnInfo.EditLayoutWidth.Value : Unit.Percentage(columnInfo.EditLayoutWidth.Value); } }); break; case MVCxGridViewColumnType.DateEdit: if (columnInfo.Width.HasValue) { gcol.Width = (!columnInfo.IsWidthAndHeightInPercentage) ? columnInfo.Width.Value : Unit.Percentage(columnInfo.Width.Value); } gcol.EditorProperties().DateEdit(s => { s.ValidationSettings.ErrorDisplayMode = columnInfo.ErrorDisplayMode; if (string.IsNullOrEmpty(columnInfo.DisplayFormat)) { columnInfo.DisplayFormat = DefaultDateMask; } if (!string.IsNullOrEmpty(columnInfo.DisplayFormat)) { var editFormatString = UtilitySystem.Settings.ConfigSettings["DateFormat"]; var displayFormatString = UtilitySystem.Settings.ConfigSettings["DateFormat"]; if (columnInfo.DisplayFormat.ToLower().Contains("hh") || columnInfo.DisplayFormat.ToLower().Equals("f") || columnInfo.DisplayFormat.ToLower().Equals("r") || columnInfo.DisplayFormat.ToLower().Equals("s") || columnInfo.DisplayFormat.ToLower().Equals("u")) { editFormatString = UtilitySystem.Settings.ConfigSettings["DateTimeFormat"]; displayFormatString = UtilitySystem.Settings.ConfigSettings["DateTimeFormat"]; } s.EditFormatString = editFormatString; s.DisplayFormatString = displayFormatString; s.EditFormat = EditFormat.Custom; s.TimeSectionProperties.ShowSecondHand = false; s.TimeSectionProperties.Visible = true; } s.ValidationSettings.Display = Display.Dynamic; s.ValidationSettings.SetFocusOnError = true; s.NullDisplayText = ""; //s.Height = (!columnInfo.IsWidthAndHeightInPercentage) ? columnInfo.EditLayoutHeight : Unit.Percentage(columnInfo.EditLayoutHeight); if (columnInfo.EditLayoutWidth.HasValue) { s.Width = (!columnInfo.IsWidthAndHeightInPercentage) ? columnInfo.EditLayoutWidth.Value : Unit.Percentage(columnInfo.EditLayoutWidth.Value); } }); break; case MVCxGridViewColumnType.SpinEdit: if (columnInfo.Width.HasValue) { gcol.Width = (!columnInfo.IsWidthAndHeightInPercentage) ? columnInfo.Width.Value : Unit.Percentage(columnInfo.Width.Value); } gcol.EditorProperties().SpinEdit(s => { if (columnInfo.EditorProperties != null) { try { s.NumberType = columnInfo.EditorProperties.NumberType; } catch (System.Exception) { ; } } s.MinValue = 0; s.MaxValue = Int32.MaxValue; s.ValidationSettings.ErrorDisplayMode = columnInfo.ErrorDisplayMode; s.ValidationSettings.Display = Display.Dynamic; s.ValidationSettings.SetFocusOnError = true; //s.Height = (!columnInfo.IsWidthAndHeightInPercentage) ? columnInfo.EditLayoutHeight : Unit.Percentage(columnInfo.EditLayoutHeight); if (columnInfo.EditLayoutWidth.HasValue) { s.Width = (!columnInfo.IsWidthAndHeightInPercentage) ? columnInfo.EditLayoutWidth.Value : Unit.Percentage(columnInfo.EditLayoutWidth.Value); } }); break; case MVCxGridViewColumnType.CheckBox: if (columnInfo.Width.HasValue) { gcol.Width = (!columnInfo.IsWidthAndHeightInPercentage) ? columnInfo.Width.Value : Unit.Percentage(columnInfo.Width.Value); } gcol.EditorProperties().CheckBox(s => { s.ValidationSettings.ErrorDisplayMode = ErrorDisplayMode.ImageWithTooltip; s.ValidationSettings.Display = Display.Dynamic; s.ValidationSettings.SetFocusOnError = true; s.ValidationSettings.RequiredField.IsRequired = false; }); break; case MVCxGridViewColumnType.BinaryImage: if (columnInfo.Width.HasValue) { gcol.Width = (!columnInfo.IsWidthAndHeightInPercentage) ? columnInfo.Width.Value : Unit.Percentage(columnInfo.Width.Value); } gcol.EditorProperties().BinaryImage(p => { if (columnInfo.EditLayoutHeight.HasValue) { p.ImageHeight = (!columnInfo.IsWidthAndHeightInPercentage) ? columnInfo.EditLayoutHeight.Value : Unit.Percentage(columnInfo.EditLayoutHeight.Value); } if (columnInfo.EditLayoutWidth.HasValue) { p.ImageWidth = (!columnInfo.IsWidthAndHeightInPercentage) ? columnInfo.EditLayoutWidth.Value : Unit.Percentage(columnInfo.EditLayoutWidth.Value); } p.EnableServerResize = true; p.ImageSizeMode = ImageSizeMode.FitProportional; p.CallbackRouteValues = columnInfo.CallBackRoute; p.EditingSettings.Enabled = true; p.EditingSettings.UploadSettings.UploadValidationSettings.MaxFileSize = 4194304; }); break; case MVCxGridViewColumnType.ComboBox: if (columnInfo.Lookup != null && !columnInfo.IsGridLookup) { if (columnInfo.Width.HasValue) { gcol.Width = (!columnInfo.IsWidthAndHeightInPercentage) ? columnInfo.Width.Value : Unit.Percentage(columnInfo.Width.Value); } gcol.EditorProperties().ComboBox(cb => { cb.ValidationSettings.ErrorDisplayMode = ErrorDisplayMode.ImageWithTooltip; cb.ValidationSettings.Display = Display.Dynamic; cb.ValidationSettings.SetFocusOnError = true; cb.Width = Unit.Percentage(100); cb.NullText = columnInfo.Lookup.NullCaption; cb.TextField = columnInfo.Lookup.DisplayColumnName; cb.ValueField = columnInfo.Lookup.KeyColumnName; cb.DropDownStyle = columnInfo.Lookup.Style; cb.DataSource = columnInfo.Lookup.DataSource; if (columnInfo.Lookup.CallbackRouteValues != null) { cb.CallbackRouteValues = columnInfo.Lookup.CallbackRouteValues; } if (!string.IsNullOrEmpty(columnInfo.Lookup.BeginCallBackEvent)) { cb.ClientSideEvents.BeginCallback = columnInfo.Lookup.BeginCallBackEvent; } if (!string.IsNullOrEmpty(columnInfo.Lookup.SelectedIndexChangedEvent)) { cb.ClientSideEvents.SelectedIndexChanged = columnInfo.Lookup.SelectedIndexChangedEvent; } //cb.Height = (!columnInfo.IsWidthAndHeightInPercentage) ? columnInfo.EditLayoutHeight : Unit.Percentage(columnInfo.EditLayoutHeight); if (columnInfo.EditLayoutWidth.HasValue) { cb.Width = (!columnInfo.IsWidthAndHeightInPercentage) ? columnInfo.EditLayoutWidth.Value : Unit.Percentage(columnInfo.EditLayoutWidth.Value); } }); } else //gridView Lookup { } break; case MVCxGridViewColumnType.TextBox: if (columnInfo.Width.HasValue) { gcol.Width = (!columnInfo.IsWidthAndHeightInPercentage) ? columnInfo.Width.Value : Unit.Percentage(columnInfo.Width.Value); } gcol.EditorProperties().TextBox(s => { s.EncodeHtml = columnInfo.EncodeHtml; s.ValidationSettings.ErrorDisplayMode = columnInfo.ErrorDisplayMode; s.ValidationSettings.Display = Display.Dynamic; s.ValidationSettings.SetFocusOnError = true; //s.Height = (!columnInfo.IsWidthAndHeightInPercentage) ? columnInfo.EditLayoutHeight : Unit.Percentage(columnInfo.EditLayoutHeight); if (columnInfo.EditLayoutWidth.HasValue) { s.Width = (!columnInfo.IsWidthAndHeightInPercentage) ? columnInfo.EditLayoutWidth.Value : Unit.Percentage(columnInfo.EditLayoutWidth.Value); } if (columnInfo.DisplayFormat != null && columnInfo.DisplayFormat.Length > 0) { s.MaskSettings.Mask = columnInfo.DisplayFormat; s.MaskSettings.IncludeLiterals = MaskIncludeLiteralsMode.None; s.DisplayFormatString = columnInfo.DisplayFormat; } }); break; case MVCxGridViewColumnType.Memo: if (columnInfo.Width.HasValue) { gcol.Width = (!columnInfo.IsWidthAndHeightInPercentage) ? columnInfo.Width.Value : Unit.Percentage(columnInfo.Width.Value); } gcol.EditorProperties().Memo(s => { s.EncodeHtml = columnInfo.EncodeHtml; s.ValidationSettings.ErrorDisplayMode = columnInfo.ErrorDisplayMode; s.ValidationSettings.Display = Display.Dynamic; s.ValidationSettings.SetFocusOnError = true; if (columnInfo.EditLayoutWidth.HasValue) { s.Width = (!columnInfo.IsWidthAndHeightInPercentage) ? columnInfo.EditLayoutWidth.Value : Unit.Percentage(columnInfo.EditLayoutWidth.Value); } if (columnInfo.EditLayoutHeight.HasValue) { s.Height = (!columnInfo.IsWidthAndHeightInPercentage) ? columnInfo.EditLayoutHeight.Value : Unit.Percentage(columnInfo.EditLayoutHeight.Value); } }); break; } if (!columnInfo.IsVisible) { gcol.Width = 0; } }
public static GridViewSettings <TModel> GetGridViewReportSetting <TModel>(ECOM.Models.GridViewConfig gridConfig, bool IsExportData = true) { var gridViewSettings = new GridViewSettings <TModel>(); gridViewSettings.Name = gridConfig.GridViewName; gridViewSettings.KeyFieldName = gridConfig.KeyFieldName; gridViewSettings.SettingsPager.PageSize = gridConfig.PageSize; gridViewSettings.CallbackRouteValues = gridConfig.CallbackRouteValues; gridViewSettings.CustomActionRouteValues = gridConfig.CustomActionRouteValues; gridViewSettings.SettingsPager.Position = System.Web.UI.WebControls.PagerPosition.TopAndBottom; gridViewSettings.SettingsPager.FirstPageButton.Visible = true; gridViewSettings.SettingsPager.LastPageButton.Visible = true; gridViewSettings.SettingsPager.PageSizeItemSettings.Visible = true; gridViewSettings.Width = System.Web.UI.WebControls.Unit.Percentage(100); gridViewSettings.Height = System.Web.UI.WebControls.Unit.Percentage(100); gridViewSettings.SettingsBehavior.ColumnResizeMode = ColumnResizeMode.Control; gridViewSettings.CommandColumn.ShowClearFilterButton = true; gridViewSettings.Settings.ShowFilterRow = true; gridViewSettings.Settings.ShowFilterRowMenu = true; gridViewSettings.SettingsPager.PageSizeItemSettings.Items = new string[] { "10", "25", "50", "100" }; gridViewSettings.SettingsBehavior.AllowFocusedRow = true; //Selected Row gridViewSettings.Settings.HorizontalScrollBarMode = ScrollBarMode.Visible; gridViewSettings.ControlStyle.CssClass = "grid-view-custom"; //Menu Context Setting gridViewSettings.SettingsContextMenu.Enabled = true; gridViewSettings.SettingsBehavior.EnableCustomizationWindow = true; gridViewSettings.SettingsContextMenu.EnableRowMenu = DefaultBoolean.False; gridViewSettings.SettingsContextMenu.EnableFooterMenu = DefaultBoolean.False; gridViewSettings.SettingsContextMenu.EnableGroupPanelMenu = DefaultBoolean.False; gridViewSettings.SettingsPopup.CustomizationWindow.HorizontalAlign = PopupHorizontalAlign.LeftSides; gridViewSettings.SettingsPopup.CustomizationWindow.VerticalAlign = PopupVerticalAlign.Below; gridViewSettings.ContextMenuItemVisibility = (sender, e) => { // Custom menu context Item if (e.MenuType == GridViewContextMenuType.Columns) { foreach (var item in e.Items) { GridViewContextMenuItem menuItemDelete = item as GridViewContextMenuItem; if (menuItemDelete.Name == "GroupByColumn" || menuItemDelete.Name == "ShowGroupPanel" || menuItemDelete.Name == "ShowSearchPanel" || menuItemDelete.Name == "ShowFilterRow" || menuItemDelete.Name == "ShowFilterRowMenu" || menuItemDelete.Name == "ShowFooter" ) { e.SetVisible(menuItemDelete, false); } } } }; gridViewSettings.SettingsBehavior.EnableCustomizationWindow = true; gridViewSettings.CustomJSProperties = (sender, e) => { string separator = ","; string fieldNames = string.Empty; MVCxGridView grid = (MVCxGridView)sender; foreach (DevExpress.Web.GridViewColumn column in grid.VisibleColumns) { if (column is GridViewDataColumn) { GridViewDataColumn dataColumn = (GridViewDataColumn)column; if (!string.IsNullOrEmpty(dataColumn.FieldName) && dataColumn.Visible) { fieldNames += dataColumn.FieldName + ","; } } } fieldNames = fieldNames.TrimEnd(separator.ToCharArray()); e.Properties["cpFieldNames"] = fieldNames; }; //End menu context setting if (IsExportData == false) { gridViewSettings.Columns.Add(c => { c.UnboundType = DevExpress.Data.UnboundColumnType.String; c.Caption = ECOM.Resources.ECOMResource.Number; c.Settings.AllowAutoFilter = DefaultBoolean.False; c.Settings.AllowDragDrop = DefaultBoolean.False; c.Settings.AllowSort = DefaultBoolean.False; c.Width = 30; }); gridViewSettings.CustomColumnDisplayText = (s, e) => { if (e.Column.Caption == ECOM.Resources.ECOMResource.Number) { e.DisplayText = (e.VisibleRowIndex + 1).ToString(); } }; } foreach (var item in gridConfig.Columns.Where(x => x.Enable == true)) { MVCxGridViewColumn column = gridViewSettings.Columns.Add(); column.FieldName = item.ColumnName; column.Caption = item.DisplayText; //column.Visible = item.Enable; column.Visible = true; if (item.ColumnType == "System.DateTime" || item.ColumnType == "System.Date" || item.ColumnType.Contains("System.DateTime")) { if (!string.IsNullOrEmpty(item.ColumnFormat)) { column.PropertiesEdit.DisplayFormatString = item.ColumnFormat; } else { //Default is DateTime format column.PropertiesEdit.DisplayFormatString = ECOM.Resources.ECOMResource.ResourceManager.GetString("DefaultDateFormat"); } } if (item.ColumnType == "System.Decimal") { column.PropertiesEdit.DisplayFormatString = "N2"; } } return(gridViewSettings); }
public static void Configure(this GridLookupSettings settings, GridLookup gridLkp, HtmlHelper html, ViewContext viewContext, params string[] arguments) { settings.Width = Unit.Percentage(100); settings.Height = Unit.Percentage(100); settings.GridViewStyles.Header.Wrap = DefaultBoolean.True; settings.GridViewProperties.Settings.HorizontalScrollBarMode = ScrollBarMode.Auto; settings.GridViewProperties.Settings.VerticalScrollBarMode = ScrollBarMode.Auto; //settings.GridViewProperties.SettingsExport.EnableClientSideExportAPI = true; //settings.SettingsExport.ExcelExportMode = DevExpress.Export.ExportType.DataAware; settings.GridViewProperties.Settings.ShowTitlePanel = true; //settings.GridViewProperties.Ti = gridData.Title; settings.GridViewStyles.AlternatingRow.BackColor = gridLkp.Data.AlternateRowColor; settings.Name = gridLkp.Name; settings.KeyFieldName = gridLkp.KeyColumnName; #region Configure Toolbars if (gridLkp.Data.ToolBarOptions.Show) { settings.AddToolBar(html, viewContext, gridLkp.Data.ToolbarItems, gridLkp.Data.ToolBarOptions); } #endregion #region Configure Columns foreach (var col in gridLkp.Data.DisplayColumns) { if (col.ColumnAction != null) { settings.Columns.Add(col.ColumnAction); var lcol = settings.Columns[col.Name] as MVCxGridViewColumn; if (!string.IsNullOrEmpty(col.DisplayName)) { lcol.Caption = col.DisplayName; } lcol.SetProperties(col); continue; } MVCxGridViewColumn gcol = settings.Columns.Add(col.Name, col.DisplayName, col.ColumnType); gcol.Set(col); } #endregion #region Configure Callback Route if (gridLkp.Data.CallBackRoute != null) { settings.GridViewProperties.CallbackRouteValues = gridLkp.Data.CallBackRoute; } #endregion //#region Configure Buttons //foreach (var btn in gridData.Buttons) //{ // settings.AddButton(btn.Type, btn.Display); //} //#endregion if (gridLkp.Data.ButtonOptions != null) { settings.CommandColumn.Visible = gridLkp.Data.ButtonOptions.Show; settings.CommandColumn.ShowNewButtonInHeader = gridLkp.Data.ButtonOptions.DisplayAddButtonInGridHeader; settings.CommandColumn.ShowNewButton = gridLkp.Data.ButtonOptions.DisplayAddButton; settings.CommandColumn.ShowCancelButton = gridLkp.Data.ButtonOptions.DisplayCancelButton; settings.CommandColumn.ShowEditButton = gridLkp.Data.ButtonOptions.DisplayEditButton; settings.CommandColumn.ShowUpdateButton = gridLkp.Data.ButtonOptions.DisplayUpdateButton; settings.CommandColumn.ShowDeleteButton = gridLkp.Data.ButtonOptions.DisplayDeleteButton; settings.CommandColumn.Width = Unit.Percentage(gridLkp.Data.ButtonOptions.Width); } }