本文介绍如何在网页里显示DropDownList。

Step 1: 在Control里面添加方法

  1. public ActionResult ShowDropDownList()
  2. {
  3. return View();
  4. }

Step 2: 在View部分添加一下代码

  1. @Html.DropDownList("Department", new List<SelectListItem>
  2. {
  3. new SelectListItem {Text = "IT", Value = "", Selected = true},
  4. new SelectListItem {Text = "HR", Value = ""},
  5. new SelectListItem {Text = "Payroll", Value = ""},
  6. }, "Select Department")

上面部分是通过“手动”的形式添加dropdownlist的选项,如果想通过数据库读取内容,则首先添加Context, 然后通过Context获取数据表的内容。

  1. public ActionResult ShowDropDownList()
  2. {
  3. SampleDataContext db = new SampleDataContext();
  4. ViewBag.Departments = new SelectList(db.Departments, "DepartmentID", "Name");
  5. return View();
  6. }
  1. @Html.DropDownList("Departments", "Select Department")

保存在ViewBag.Departments里的数据自动显示在DropdownList里。

如果想让某一个项在加载的时候显示出来,可以把

  1. ViewBag.Departments = new SelectList(db.Departments, "DepartmentID", "Name");

改成:

  1. ViewBag.Departments = new SelectList(db.Departments, "DepartmentID", "Name" “”);

这里“1”指的是显示项的ID。

但是这种方式还是比较“笨”,我们可以在表中设置一个属性叫做isSelected (如表中所示),通过每个选项的值来决定哪一个项被选定。

  1. public ActionResult ShowDropDownList()
  2. {
  3. SampleDataContext db = new SampleDataContext();
  4. List<SelectListItem> selectListItems = new List<SelectListItem>();
  5. foreach (var department in db.Departments)
  6. {
  7. SelectListItem selectListItem = new SelectListItem
  8. {
  9. Text = department.Name,
  10. Value = department.DepartmentID.ToString(),
  11. Selected = department.IsSelected.HasValue? department.IsSelected.Value : false
  12. };
  13. selectListItems.Add(selectListItem);
  14. }
  15. ViewBag.Departments = selectListItems;
  16. return View();
  17. }

View端保持不变。

ASP.NET MVC Dropdownlist的更多相关文章

  1. ASP.NET MVC DropdownList的使用

    1:直接使用HTML代码写 <select name="year"> <option value="2011">2010</opt ...

  2. [摘]在ASP.NET MVC中使用DropDownList

    在ASP.NET MVC中,尽管我们可以直接在页面中编写HTML控件,并绑定控件的属性,但更方便的办法还是使用HtmlHelper中的辅助方法.在View中,包含一个类型为HtmlHelper的属性H ...

  3. ASP.NET MVC中使用DropDownList

    在ASP.NET MVC中,尽管我们可以直接在页面中编写HTML控件,并绑定控件的属性,但更方便的办法还是使用HtmlHelper中的辅助方法.在View中,包含一个类型为HtmlHelper的属性H ...

  4. 在ASP.NET MVC中使用DropDownList

    在ASP.NET MVC中,尽管我们可以直接在页面中编写HTML控件,并绑定控件的属性,但更方便的办法还是使用HtmlHelper中的辅助方法.在View中,包含一个类型为HtmlHelper的属性H ...

  5. <转>ASP.NET学习笔记之在ASP.NET MVC中使用DropDownList

    看到一篇关于dropdownlist的用法很好的阐述,比较清楚,留着,防止以后自己不记得,还可以瞅瞅. 在ASP.NET MVC中,尽管我们可以直接在页面中编写HTML控件,并绑定控件的属性,但更方便 ...

  6. Asp.Net MVC绑定DropDownList等控件

    测试环境:vs2013..Net4.5.mvc5 一.Asp.Net MVC绑定控件原理说明 以Html.TextBox为例 /// <param name="name"&g ...

  7. asp.net mvc中DropDownList

    asp.net mvc中DropDownList的使用. 下拉列表框 以分为两个部分组成:下拉列表和默认选项 DropDownList扩展方法的各个重载版本基本上都会传递到这个方法上:   publi ...

  8. ASP.NET MVC中DropDownList的使用

    Asp.net MVC中的DropDownLists貌似会让一开始从Asp.net Forms转过来的程序员造成不少迷惑.这篇文章讲述了为了使用DropDownLists,你需要在Asp.Net MV ...

  9. ASP.NET MVC with Entity Framework and CSS一书翻译系列文章之第二章:利用模型类创建视图、控制器和数据库

    在这一章中,我们将直接进入项目,并且为产品和分类添加一些基本的模型类.我们将在Entity Framework的代码优先模式下,利用这些模型类创建一个数据库.我们还将学习如何在代码中创建数据库上下文类 ...

随机推荐

  1. MV*模式的个人理解

    MV*模式主要解决的问题就是 View代码难以维护的问题. MV*模式将View中的逻辑分离出去,形成一个弱逻辑的易于维护的视图. MV*中的*是Model和View的桥梁,负责保持Model和Vie ...

  2. C++ compile issue

    You can do so via right-click -> Properties on a file or a selection of files in Solution Explore ...

  3. ASP.NET MVC4/5 - Ajax 防止 CSRF攻击

    前言 CSRF(Cross-site request forgery跨站请求伪造,也被称为“One Click Attack”或者Session Riding,通常缩写为CSRF或者XSRF,是一种对 ...

  4. 【8-17】c++学习笔记01

    控制台程序不自动退出方法: system("pause"); getchar() 使用执行 ctrl+F5,开始调试 F5会出现闪退 动态内存分配 //construct c st ...

  5. XHTML的若干注意点

    1.重要的兼容性提示: 你应该在 "/" 符号前添加一个额外的空格,以使你的 XHTML 与当今的浏览器相兼容. 2.XML对大小写敏感. 3.在 XHTML 中是不允许使用空标签 ...

  6. Vagrant error: Your VM has become inaccessible.

    博客转自:http://doodlebobbers.com/vagrant-error-your-vm-has-become-inaccessible/ If you’ve deleted a vir ...

  7. WebService 之 WSDL文件 讲解

    原文地址:http://blog.csdn.net/tropica/archive/2008/11/02/3203892.aspx 恩,我想说的是,是不是经常有人在开发的时候,特别是和第三方有接口的时 ...

  8. django 文件上传

    模板文件: <form method='post' action='/script/upload/' enctype="multipart/form-data" accept ...

  9. Linux下Redis常用命令

    >src/redis-server  启动 Redis 服务  或者>src/redis-server redis.conf src/redis-server redis.conf 1&g ...

  10. matplotlib basic and boxplot

    ============================================matplotlib 绘图基础========================================= ...