Exemple #1
0
 public static void AttachCollectionItem(this OptionsOwnerBuilder builder, IDictionary <string, object> parentOptions, string jsName, object item)
 {
     if (!parentOptions.ContainsKey(jsName))
     {
         parentOptions[jsName] = new List <object>();
     }
     ((IList)parentOptions[jsName]).Add(item);
 }
 public static FormSimpleItemBuilder AddSimpleFor <TFormData, TProperty>(this FormItemsFactory <TFormData> factory, Expression <Func <TFormData, TProperty> > expression)
 {
     return(factory.AddSimple(delegate(IHtmlHelperAdapter html, FormSimpleItemBuilder item)
     {
         string expressionText = GetExpressionText(html, expression);
         item.DataField(expressionText);
         ModelExplorer modelExplorer = GetModelExplorer(html, expression);
         ModelMetadata modelMetadata = modelExplorer?.Metadata;
         if (modelMetadata != null)
         {
             Func <FormItemEditorFactory, WidgetBuilder> formItemEditor = GetFormItemEditor(modelMetadata);
             if (formItemEditor != null && !factory.HasParentOwner("dxDataGrid", "dxTreeList"))
             {
                 item.Editor(formItemEditor);
             }
             string displayName = GetDisplayName(modelMetadata);
             if (!string.IsNullOrEmpty(displayName))
             {
                 item.Label(delegate(FormItemLabelBuilder label)
                 {
                     label.Text(displayName);
                 });
             }
             string displayPrompt = GetDisplayPrompt(modelMetadata);
             if (!string.IsNullOrEmpty(displayPrompt))
             {
                 OptionsOwnerBuilder.GetNestedOptions(item.Options, "editorOptions")["placeholder"] = displayPrompt;
             }
             string displayDescription = GetDisplayDescription(modelMetadata);
             if (!string.IsNullOrEmpty(displayDescription))
             {
                 item.HelpText(displayDescription);
             }
             IEnumerable <IDictionary <string, object> > validationRules = DataAnnotationsHelper.GetValidationRules(expressionText, modelExplorer, html.ViewContext);
             if (validationRules.Any())
             {
                 item.Options["validationRules"] = validationRules;
             }
         }
     }));
 }
 public FormItemEditorFactory(OptionsOwnerBuilder owner, IHtmlHelperAdapter html)
     : base(owner, html)
 {
     //
 }
Exemple #4
0
 public static F WidgetFactory <F>(OptionsOwnerBuilder owner, IHtmlHelperAdapter html) where F : AbstractWidgetFactory
 {
     return(GetFactory <OptionsOwnerBuilder, IHtmlHelperAdapter, F>()(owner, html));
 }
Exemple #5
0
 public TextEditorButtonWidgetFactory(OptionsOwnerBuilder owner, IHtmlHelperAdapter html)
     : base(owner, html)
 {
     //
 }
 public ToolbarItemFactory(OptionsOwnerBuilder owner, IHtmlHelperAdapter html)
     : base(owner, html)
 {
 }
Exemple #7
0
 /// <summary>
 /// 初始化
 /// </summary>
 /// <param name="owner"></param>
 /// <param name="html"></param>
 protected AbstractWidgetFactory(OptionsOwnerBuilder owner, IHtmlHelperAdapter html)
 {
     Owner = owner;
     Html  = html;
 }
 /// <summary>
 /// 拥有者,谁拥有控件。
 /// </summary>
 /// <param name="item"></param>
 protected void Add(OptionsOwnerBuilder item)
 {
     (item as ICollectionItem).Index = _itemBuilders.Count;
     _itemBuilders.Add(item);
 }