示例#1
0
 public static void BuildEditTemplateLayout(this FormLayoutSettings <dynamic> flSettings, GridViewSettings settings, GridEditFormLayout gridLayout)
 {
     if (gridLayout == null)
     {
         settings.SettingsEditing.Mode = GridViewEditingMode.Inline;
         return;
     }
     settings.SettingsEditing.Mode = gridLayout.EditMode;
     settings.EditFormLayoutProperties.ColumnCount = gridLayout.ColumnCount;
     foreach (var k in gridLayout.DisplayColumns)
     {
         MVCxGridViewColumnLayoutItem col;
         if (k.LayoutAction != null)
         {
             col            = settings.EditFormLayoutProperties.Items.Add(k.LayoutAction);
             col.ColumnName = k.Name;
         }
         else
         {
             col         = settings.EditFormLayoutProperties.Items.Add(k.Name);
             col.Caption = k.DisplayName;
             if (k.Width.HasValue)
             {
                 col.Width = (!k.IsWidthAndHeightInPercentage) ? k.Width.Value : Unit.Percentage(k.Width.Value);
             }
         }
         col.ClientVisible = k.IsVisible;
     }
     for (int i = 0; i < gridLayout.EmptyLayputItemCount; i++)
     {
         settings.EditFormLayoutProperties.Items.AddEmptyItem(new EmptyLayoutItem());
     }
     settings.EditFormLayoutProperties.Items.AddCommandItem(gridLayout.ProcessLayout);
     //settings.EditFormLayoutProperties.SettingsAdaptivity.AdaptivityMode = FormLayoutAdaptivityMode.SingleColumnWindowLimit;
     settings.EditFormLayoutProperties.SettingsAdaptivity.SwitchToSingleColumnAtWindowInnerWidth = 700;
 }
示例#2
0
        public static void BuildEditLayout(this GridViewSettings settings, GridEditFormLayout gridLayout)
        {
            if (gridLayout == null || (settings.SettingsEditing.Mode == GridViewEditingMode.Inline))
            {
                settings.SettingsEditing.Mode = GridViewEditingMode.Inline;
                return;
            }

            settings.SettingsEditing.Mode = gridLayout.EditMode;
            if (gridLayout.EditMode == GridViewEditingMode.Batch)
            {
                settings.SettingsEditing.BatchEditSettings.EditMode        = gridLayout.BatchEditMode;
                settings.SettingsEditing.BatchEditSettings.StartEditAction = gridLayout.BatchEditAction;
                settings.SettingsEditing.BatchEditSettings.AllowRegularDataItemTemplate = gridLayout.BatchEditAllowRegularDataItemTemplate;

                return;
            }

            settings.EditFormLayoutProperties.ColumnCount = gridLayout.ColumnCount;

            if (gridLayout.DisplayColumns.Any())
            {
                foreach (var k in gridLayout.DisplayColumns)
                {
                    //Setting a column Type as default.  Adds a Empty Layout item
                    if (k.ColumnType == MVCxGridViewColumnType.Default)
                    {
                        settings.EditFormLayoutProperties.Items.AddEmptyItem(new EmptyLayoutItem());
                        continue;
                    }

                    MVCxGridViewColumnLayoutItem col;
                    if (k.LayoutAction != null)
                    {
                        col            = settings.EditFormLayoutProperties.Items.Add(k.LayoutAction);
                        col.ColumnName = k.Name;
                    }
                    else
                    {
                        col         = settings.EditFormLayoutProperties.Items.Add(k.Name);
                        col.Caption = k.DisplayName;
                    }

                    if (k.Width.HasValue)
                    {
                        col.Width = (!k.IsWidthAndHeightInPercentage) ? k.Width.Value : Unit.Percentage(k.Width.Value);
                    }
                    if (k.Height.HasValue)
                    {
                        col.Height = (!k.IsWidthAndHeightInPercentage) ? k.Height.Value : Unit.Percentage(k.Height.Value);
                    }
                    col.ClientVisible = k.IsVisible;
                }
            }

            for (int i = 0; i < gridLayout.EmptyLayputItemCount; i++)
            {
                settings.EditFormLayoutProperties.Items.AddEmptyItem(new EmptyLayoutItem());
            }

            settings.EditFormLayoutProperties.Items.AddCommandItem(gridLayout.ProcessLayout);
            settings.EditFormLayoutProperties.SettingsAdaptivity.AdaptivityMode = gridLayout.AdaptiveMode;
            settings.EditFormLayoutProperties.SettingsAdaptivity.SwitchToSingleColumnAtWindowInnerWidth = gridLayout.AdaptiveModeSingleColumnWindowInnerWidth;
        }