首页 > Web开发 > 详细

asp.net mvc HtmlHelperExt EnumDropDownList

时间:2014-10-08 09:43:55      阅读:642      评论:0      收藏:0      [点我收藏+]
bubuko.com,布布扣
 1 public static class HtmlHelperExt
 2     {
 3         public static MvcHtmlString EnumDropDownList<TEnum>(this HtmlHelper htmlHelper, string name, TEnum selectedValue)
 4         {
 5             IEnumerable<TEnum> values = Enum.GetValues(typeof (TEnum))
 6                 .Cast<TEnum>();
 7 
 8             IEnumerable<SelectListItem> items =
 9                 from value in values
10                 select new SelectListItem
11                 {
12                     Text = value.ToString(),
13                     Value = value.ToString(),
14                     Selected = (value.Equals(selectedValue))
15                 };
16 
17             return htmlHelper.DropDownList(
18                 name,
19                 items
20                 );
21         }
22 
23         public static MvcHtmlString EnumDropDownListFor<TModel, TEnum>(this HtmlHelper<TModel> htmlHelper,
24             Expression<Func<TModel, TEnum>> expression)
25         {
26             ModelMetadata metadata = ModelMetadata.FromLambdaExpression(expression, htmlHelper.ViewData);
27             IEnumerable<TEnum> values = Enum.GetValues(typeof (TEnum)).Cast<TEnum>();
28 
29             IEnumerable<SelectListItem> items =
30                 values.Select(value => new SelectListItem
31                 {
32                     Text = value.ToString(),
33                     Value = value.ToString(),
34                     Selected = value.Equals(metadata.Model)
35                 });
36 
37             return htmlHelper.DropDownListFor(
38                 expression,
39                 items
40                 );
41         }
42     }
HtmlHelper

 

asp.net mvc HtmlHelperExt EnumDropDownList

原文:http://www.cnblogs.com/baiyunchen/p/4010447.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!