首页 新闻 会员 周边

问个ASP.NET MVC的htmlhelper的扩展问题

0
悬赏园豆:10 [已关闭问题] 关闭于 2012-01-16 23:19
public static MvcHtmlString UnitHtml(this HtmlHelper htmlhelper, UnitProject up)
{

StringBuilder sb = new StringBuilder();
htmlhelper.HiddenFor()
}

我想调用

HiddenFor()方法改如何做
在北落的主页 在北落 | 初学一级 | 园豆:159
提问于:2011-12-13 17:41
< >
分享
所有回答(2)
0

在里面写lambda表达式。

悟行 | 园豆:12559 (专家六级) | 2011-12-13 18:00
0

   /// <summary> 
        /// 通过lambda表达式生成控件 
        /// </summary> 
        /// <param name="helper">HtmlHelper对象</param> 
        /// <param name="expression">lambda表达式,指定要显示的属性及其所属对象</param> 
        /// <param name="format">显示格式</param> 
        /// <returns>Html文本</returns> 
        public static string CalendarFor<TModel, TProperty>(this HtmlHelper<TModel> helper, Expression<Func<TModel, TProperty>> expression, string format)
        {
            string name = ExpressionHelper.GetExpressionText(expression);
            DateTime value;
            object data = ModelMetadata.FromLambdaExpression<TModel, TProperty>(expression, helper.ViewData).Model;
            if (data != null && DateTime.TryParse(data.ToString(), out value))
            {
                return GenerateHtml(name, value, format);
            }
            else
            {
                return GenerateHtml(name, null, format);
            }
        }
        /// <summary> 
        /// 生成输入框的Html 
        /// </summary> 
        /// <param name="name">calendar的名称</param> 
        /// <param name="date">calendar的值</param> 
        /// <returns>html文本</returns> 
        private static string GenerateHtml(string name, DateTime? date, string format)
        {
            if (date != null)
            {
                return "<input type=\"text\" id=\"" + name + "\" name=\"" + name + "\" onfocus=\"WdatePicker({dateFmt:'" + format + "'})\" class=\"Wdate\" value=\"" + date.Value.ToString(format) + "\" />";

            }
            else
            {
                return "<input type=\"text\" id=\"" + name + "\" name=\"" + name + "\" onfocus=\"WdatePicker({dateFmt:'" + format + "'})\" class=\"Wdate\" value=\"\" />";
            }
        }

 

这是 我写的一个日期的 你看看那就知道了

学不会 | 园豆:198 (初学一级) | 2011-12-23 11:53
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册