/// <summary> /// 为 <see cref="HtmlHelper"/> 对象扩展 datetimespinner 元素。 /// </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 ExtendHtmlString DateTimeSpinner<TModel, TProperty>(this HtmlHelper<TModel> htmlHelper, Expression<Func<TModel, TProperty>> expression, DateTimeSpinnerSettings settings = null) { settings = settings ?? new DateTimeSpinnerSettings(); var metadata = ModelMetadata.FromLambdaExpression(expression, htmlHelper.ViewData); var propertyName = metadata.PropertyName; settings.Bind(typeof(TModel), propertyName); var builder = new EasyUITagBuilder("input", "easyui-timespinner", settings); builder.MergeAttribute("name", propertyName); builder.MergeAttribute("data-options", SettingsSerializer.Serialize(settings)); builder.AddCssClass("form-input"); builder.GenerateId("txt" + propertyName); return new ExtendHtmlString(builder); }
/// <summary> /// 为 <see cref="HtmlHelper"/> 对象扩展 datetimespinner 元素。 /// </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> DateTimeSpinner <TModel, TProperty>(this HtmlHelper <TModel> htmlHelper, Expression <Func <TModel, TProperty> > expression, DateTimeSpinnerSettings settings = null) { var metadata = new ModelPropertyBinder(expression); var propertyName = metadata.PropertyName; settings = settings ?? new DateTimeSpinnerSettings(); settings.Bind(typeof(TModel), propertyName); var options = SettingsSerializer.Serialize(settings); htmlHelper.ResetBuilder("INPUT", "txt" + propertyName, propertyName); htmlHelper.AddStyle("width", "160px") .EasyUI("easyui-datetimespinner", options); return(htmlHelper); }