1、下面代码包含了三种绑定DropDownList的方法

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc; namespace SupermarketManagement.Controllers
{
public class HtmlControlsController : Controller
{
//单位枚举
public enum Units
{
米,
厘米,
毫米,
微米
} /// <summary>
/// DropDownList 控件
/// </summary>
/// <returns></returns>
public ActionResult DropDownListIndex()
{
//1、第一种表现形式(性别)
List<SelectListItem> sexItems = new List<SelectListItem>();
sexItems.Add(new SelectListItem { Text = "请选择", Value = "", Selected = true });
sexItems.Add(new SelectListItem { Text = "男", Value = "" });
sexItems.Add(new SelectListItem { Text = "女", Value = "" });
ViewBag.Sex = sexItems; //2、第二种表现形式
var values = Enum.GetValues(typeof(Units)).Cast<Units>();
var items = from value in values
select new SelectListItem { Text = value.ToString(),Value=value.ToString() };
ViewBag.Unit = items;//2.1 ViewBag.UnitEx = Units.米.ToSelectListItem("毫米");//2.2:这里用的扩展方法 //3、第三种表现形式选中(用户更新,展示)
List<SelectListItem> list = new List<SelectListItem>()
{
new SelectListItem(){Value="Man",Text="Man"},
new SelectListItem(){Value="Female",Text="Female"}
};
ViewBag.Gender = new SelectList(list, "Value", "Text","Female"); return View();
}
} //枚举扩展方法
public static class ExSelectListItem
{
/// <summary>
/// 显示所有列表
/// </summary>
/// <param name="valueEnum"></param>
/// <returns></returns>
public static IEnumerable<SelectListItem> ToSelectListItem(this Enum valueEnum)
{
var values = Enum.GetValues(valueEnum.GetType());
var result = from int value in values select new SelectListItem { Text = Enum.GetName(valueEnum.GetType(), value), Value = value.ToString() };
return result;
} /// <summary>
/// 选中的列表项
/// </summary>
/// <param name="valueEnum"></param>
/// <param name="selectName"></param>
/// <returns></returns>
public static List<SelectListItem> ToSelectListItem(this Enum valueEnum, string selectName)
{
return (from int value in Enum.GetValues(valueEnum.GetType())
select new SelectListItem
{
Text = Enum.GetName(valueEnum.GetType(), value),
Value = Enum.GetName(valueEnum.GetType(), value),
Selected = Enum.GetName(valueEnum.GetType(), value) == selectName ? true : false
}).ToList();
}
}
}

2、Views 代码

<body>
<p>
一、第一种表现形式<br />
性别:@Html.DropDownList("Sex")
</p>
<p>
二、第二种表现形式<br />
单位:@Html.DropDownList("Unit")<br />
单位:@Html.DropDownList("UnitEx")
</p>
<p>
三、第三种表现形式<br />
性别:@Html.DropDownList("Gender")
</p>
</body>

3、结果:

MVC4 DropDownList (一) — 使用方法的更多相关文章

  1. GridView下DropDownList 的选择方法onselectedindexchanged 实现方法

    在GridView下面绑定好了下拉框,我们常常会遇到一个问题, 选择方法怎么实现呢,用js总是难的去算是在GridView的第几行第几个元素,因为服务器的id和客户端的id经常变化让js根本无从找起, ...

  2. MVC4.0 扩展辅助方法

    新年第一天上班,写个博客开头吧! 在MVC中,辅助类是很常见的,比如说,Html.TextBox().Html.DropDownListFor()等,这些都是微软帮我们封装好的,可以直接调用的,它们解 ...

  3. mvc4自定义辅助器方法的学习

    1.什么是辅助器 它们可以对代码块和标记进行打包,以便能够在mvc框架应用程序中重用.可以理解成编写在页面上的C#代码(方法). 2 .自定义辅助器 创建“基本”的mvc示例,并创建Basic控制器, ...

  4. dropdownlist的OnSelectedIndexChanged方法不触发

    解决方法: AutoPostBack="true" if (!IsPostBack){ 数据绑定 } 如果数据绑定后不触发,但是手动添加数据的情况下触发<%@ Page En ...

  5. MVC4 DropDownList (二) — 省市联动

    1.添加省份和城市类 //省份 public class Province { public int Id { get; set; } public string Name { get; set; } ...

  6. ASP.NET MVC4计划任务实现方法(定时执行某个功能)

    系统中定时执行某个任务是比较常用的功能,如一个部门定期向上级部门上报数据是一个典型的例子,下面就简单说说在.net mvc中如何实现定时执行某个功能的方法. 1.首先修改Glocal.asax文件,在 ...

  7. MVC4 +EasyUI 使用TreeGrid 方法

    用easyui已经有2年了,换了新环境,要求用mvc开发,所以想把原来的项目直接用mvc重构. 在使用TreeGird的时候出现了问题,发现在转换为treegrid的json 很费劲,一直都是用的ea ...

  8. MVC4 下DropDownList使用方法

    与MVC3相比,差别很大: 表现形式一: public ActionResult Main() { List<SelectListItem> items = new List<Sel ...

  9. MVC4 下DropDownList使用方法(转)

    与MVC3相比,差别很大: 表现形式一: public ActionResult Main() { List<SelectListItem> items = new List<Sel ...

随机推荐

  1. Oracle之多表查询

    -多表查询 1.交叉连接 select * from t_class for update; select * from t_student for update; select for update ...

  2. Struts2+Datagrid表格显示(可显示多表内容)

    概述 最近学到EasyUI的Datagrid数据网格,然后就做了一个小例子,中间层利用Struts2来完成,DAO层用的是Hibernate. 数据库 数据库涉及到stuednt(name,noid, ...

  3. apache的.htaccess规则

    1..htaccess文件使用前提 .htaccess的主要作用就是实现url改写,也就是当浏览器通过url访问到服务器某个文件夹时,作为主人,我们可以来接待这个url,具体 地怎样接待它,就是此文件 ...

  4. Java垃圾回收机制概述

    总览 本文会介绍垃圾回收的以下几个方面. 为什么要垃圾回收 在哪里回收 哪些对象需要回收 怎么回收 HotSpotJVM中有哪些具体的回收器可以直接用. 在开始讲垃圾回收之前,先通过一张图快速回忆一下 ...

  5. window下创建虚拟环境

    一. windows下创建虚拟环境 1. 终端下执行命令:python -m pip install -upgrade pip 2. pip install virtualenv 3. 在本地创建一个 ...

  6. 【caffe范例详解】 - 1.Classification分类

    1. 安装 首先,导入numpy和matplotlib库 # numpy是常用的科学计算库,matplot是常用的绘图库 import numpy as np import matplotlib.py ...

  7. 封装一个CSVHelper

    public class CSVHelper { /// <summary> /// CSV转换成DataTable(OleDb数据库访问方式) /// </summary> ...

  8. orm4sqlite

    //-------------------------------------------------------------------------- // // Copyright (c) BUS ...

  9. DSP5509的XF实验-第一篇

    1. 使用大道科技的EASY-DSP5509开发板,测试第一个例程,DSP_easy5509\Code-Easy5509\EX01_XF\XF 2. 直接编译,报出错误,在Problems窗口错误指示 ...

  10. 卸载Oracle 11g

    卸载oracle只需要执行deinstall.ba即可 运行.bat文件 按照提示步骤进行卸载 .bat文件所在目录需要手动删除,需要在程序管理器里面关掉Oracle的进程,在删除当前文件夹