DropDownList

1 篇文章 0 订阅
1 篇文章 0 订阅

今天才真正理解DrowDownList中的属性是什么意思:

DataSource是所需要的所有数据集

DataTextField是下拉列表中显示给用户看的数据,是这一选项中的text值。

DataValueField是每一个选项的唯一Value值类似于JS选择的ID值,NAME值。因为dropdownlist是通过value属性进行选择的。

还有一个SelectValue,就是选中的那个value值,从而得到所对应的选项。


DataTextField用来作显示内容,一般给别人看,例如是一张表的某个字段的内容。

DataValueField用来放唯一性的字段值,一般是主键。


DataTextField是显示出来的内容,

DataValueField是controlid.selectedvalue的值


百度的关于DropDownList和DropDownListFor的区别

 一、非强类型:
Controller:
ViewData["AreId"] = from a in rp.GetArea()
                               select new SelectListItem { 
                               Text=a.AreaName,
                               Value=a.AreaId.ToString()
                               };
View:
@Html.DropDownList("AreId")
还可以给其加上一个默认选项:@Html.DropDownList("AreId", "请选择");

二、强类型:
DropDownListFor常用的是两个参数的重载,第一参数是生成的select的名称,第二个参数是数据,用于将绑定数据源至DropDownListFor
Modle:
   public class SettingsViewModel
   {
       Repository rp =new Repository();
       public string ListName { get; set; }  
       public  IEnumerable<SelectListItem> GetSelectList()
       {
               var selectList = rp.GetArea().Select(a => new SelectListItem   { 
                               Text=a.AreaName,
                               Value=a.AreaId.ToString()
                               });
                return selectList;
             }
       } 
Controller:
       public ActionResult Index()
       {
           return View(new SettingsViewModel());
       }
View:
@model Mvc3Applicationtest2.Models.SettingsViewModel
@Html.DropDownListFor(m=>m.ListName,Model.GetSelectList(),"请选择")


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值