Exemplo n.º 1
0
        /// <summary>
        /// 为 <see cref="HtmlHelper"/> 对象扩展 combobox 元素。
        /// </summary>
        /// <param name="htmlHelper"></param>
        /// <param name="exp">属性名或使用 cbo 作为前缀的 ID 名称。</param>
        /// <param name="settings">参数选项。</param>
        /// <returns></returns>
        public static HtmlHelper ComboBox(this HtmlHelper htmlHelper, string exp, ComboBoxSettings settings = null)
        {
            var options = SettingsSerializer.Serialize(settings);

            htmlHelper.ResetBuilderWithCheck("SELECT", "cbo", exp);
            htmlHelper.Builder.TagClosed = true;
            htmlHelper.AddStyle("width", "160px")
            .EasyUI("easyui-combobox", options);

            return(htmlHelper);
        }
Exemplo n.º 2
0
 /// <summary>
 /// 为 <see cref="HtmlHelper"/> 对象扩展 validatebox 元素。使用一个枚举类型输出 Key-Value 数组,Value 是使用 <see cref="EnumDescriptionAttribute"/> 标注的。
 /// </summary>
 /// <typeparam name="TModel">数据模型类型。</typeparam>
 /// <typeparam name="TProperty">绑定的属性的类型。</typeparam>
 /// <param name="htmlHelper"></param>
 /// <param name="expression">指定绑定属性的表达式。</param>
 /// <param name="enumType">要绑定的枚举类型。</param>
 /// <param name="settings">参数选项。</param>
 /// <returns></returns>
 public static HtmlHelper <TModel> ComboBox <TModel, TProperty>(this HtmlHelper <TModel> htmlHelper, Expression <Func <TModel, TProperty> > expression, Type enumType, ComboBoxSettings settings = null)
 {
     htmlHelper = htmlHelper.ComboBox <TModel, TProperty>(expression, settings);
     htmlHelper.Builder.SetInnerHtml(BuildEnumOptions(enumType));
     return(htmlHelper);
 }
Exemplo n.º 3
0
        /// <summary>
        /// 为 <see cref="HtmlHelper"/> 对象扩展 combobox 元素。
        /// </summary>
        /// <typeparam name="TModel">数据模型类型。</typeparam>
        /// <typeparam name="TProperty">绑定的属性的类型。</typeparam>
        /// <param name="htmlHelper"></param>
        /// <param name="expression">指定绑定属性的表达式。</param>
        /// <param name="settings">参数选项。</param>
        /// <returns></returns>
        public static HtmlHelper <TModel> ComboBox <TModel, TProperty>(this HtmlHelper <TModel> htmlHelper, Expression <Func <TModel, TProperty> > expression, ComboBoxSettings settings = null)
        {
            var metadata     = new ModelPropertyBinder(expression);
            var propertyName = metadata.PropertyName;

            settings = settings ?? new ComboBoxSettings();
            settings.Bind(typeof(TModel), propertyName);
            var options = SettingsSerializer.Serialize(settings);

            htmlHelper.ResetBuilder("SELECT", "cbo" + propertyName, propertyName);
            htmlHelper.Builder.TagClosed = true;
            htmlHelper.AddStyle("width", "160px")
            .EasyUI("easyui-combobox", options);

            return(htmlHelper);
        }