示例#1
0
        /// <summary>
        /// Настраивает грид согласно модели.
        /// </summary>
        /// <param name="settings">Настройки лукапа.</param>
        /// <param name="model">Модель лукапа.</param>
        public static void SetUp(this GridLookupSettings settings, GridLookupModelBase model)
        {
            settings.KeyFieldName = model.FieldName;
            settings.Name         = model.FieldName;
            settings.GridViewProperties.SettingsBehavior.EnableRowHotTrack = true;
            settings.Properties.ValidationSettings.ErrorDisplayMode        = ErrorDisplayMode.ImageWithTooltip;
            settings.ShowModelErrors = true;
            settings.Width           = Unit.Percentage(100);
            settings.GridViewProperties.CallbackRouteValues =
                new { Controller = model.ControllerName, Action = model.ActionName, fieldName = model.FieldName, initionalValue = model.Value };

            settings.GridViewProperties.SettingsPager.Position = PagerPosition.Bottom;
            settings.GridViewProperties.SettingsPager.FirstPageButton.Visible      = true;
            settings.GridViewProperties.SettingsPager.LastPageButton.Visible       = true;
            settings.GridViewProperties.SettingsPager.PageSizeItemSettings.Visible = true;
            settings.GridViewProperties.SettingsPager.PageSizeItemSettings.Items   = new string[] { "5", "10", "15" };
        }
示例#2
0
        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);
            }
        }
示例#3
0
        public static void AddToolBar(this GridLookupSettings gridView, HtmlHelper html, ViewContext viewContext, IList <MVCxGridViewToolbarItem> toolbarItems, GridToolBarOptions options)
        {
            gridView.GridViewProperties.Toolbars.Add(toolbar =>
            {
                toolbar.SetProperties(options);

                if (toolbarItems != null && toolbarItems.Any())
                {
                    toolbarItems.ToList().ForEach(t => toolbar.Items.Add(t));
                }

                if (options.DisplaySearchPanel)
                {
                    gridView.GridViewProperties.SettingsSearchPanel.CustomEditorName = "search";

                    toolbar.Items.Add(i =>
                    {
                        i.BeginGroup = true;
                        i.SetTemplateContent(c =>
                        {
                            html.DevExpress().ButtonEdit(s =>
                            {
                                s.Name = options.SearchName;
                                s.Properties.NullText = $"{options.SearchText}...";
                                s.Properties.Buttons
                                .Add()
                                .Image.IconID = DevExpress.Web.ASPxThemes.IconID.FindFind16x16gray;
                            }).Render();
                        });
                    });
                }


                if (options.DisplayRefresh)
                {
                    toolbar.Items.Add(item =>
                    {
                        item.SetProperties(options.Width, options.Height, GridViewToolbarCommand.Refresh, "~/Images/Refresh.png");
                    });
                }

                if (options.DisplayFilter)
                {
                    toolbar.Items.Add(item =>
                    {
                        item.SetProperties(options.Width, options.Height, GridViewToolbarCommand.ShowFilterRow, "~/Images/Filter.png");
                    });
                }

                if (options.DisplayClearFilter)
                {
                    toolbar.Items.Add(item =>
                    {
                        item.SetProperties(options.Width, options.Height, GridViewToolbarCommand.ClearFilter, "~/Images/ClearFilter.png");
                    });
                }

                if (options.DisplayPdfExport)
                {
                    toolbar.Items.Add(item =>
                    {
                        item.SetProperties(options.Width, options.Height, GridViewToolbarCommand.ExportToPdf, "~/Images/Pdf.png");
                    });
                }

                if (options.DisplayXlsExport)
                {
                    toolbar.Items.Add(item =>
                    {
                        item.SetProperties(options.Width, options.Height, GridViewToolbarCommand.ExportToXls, "~/Images/Excel.png");
                    });
                }

                toolbar.Items.Add(item =>
                {
                    item.SetProperties(options.Width, options.Height, GridViewToolbarCommand.Custom, "");
                    item.Name = "Space1";
                    item.SetTemplateContent(c =>
                    {
                        viewContext.Writer.Write("&nbsp;&nbsp;");
                    });
                    item.ClientEnabled = false;
                });
            });
        }
示例#4
0
 public GridLookup(GridLookupSettings gridLookupSettings)
 {
     GridLookupSettings = gridLookupSettings;
 }