MVC4 DropDownList (一) — 使用方法
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 (一) — 使用方法的更多相关文章
- GridView下DropDownList 的选择方法onselectedindexchanged 实现方法
在GridView下面绑定好了下拉框,我们常常会遇到一个问题, 选择方法怎么实现呢,用js总是难的去算是在GridView的第几行第几个元素,因为服务器的id和客户端的id经常变化让js根本无从找起, ...
- MVC4.0 扩展辅助方法
新年第一天上班,写个博客开头吧! 在MVC中,辅助类是很常见的,比如说,Html.TextBox().Html.DropDownListFor()等,这些都是微软帮我们封装好的,可以直接调用的,它们解 ...
- mvc4自定义辅助器方法的学习
1.什么是辅助器 它们可以对代码块和标记进行打包,以便能够在mvc框架应用程序中重用.可以理解成编写在页面上的C#代码(方法). 2 .自定义辅助器 创建“基本”的mvc示例,并创建Basic控制器, ...
- dropdownlist的OnSelectedIndexChanged方法不触发
解决方法: AutoPostBack="true" if (!IsPostBack){ 数据绑定 } 如果数据绑定后不触发,但是手动添加数据的情况下触发<%@ Page En ...
- MVC4 DropDownList (二) — 省市联动
1.添加省份和城市类 //省份 public class Province { public int Id { get; set; } public string Name { get; set; } ...
- ASP.NET MVC4计划任务实现方法(定时执行某个功能)
系统中定时执行某个任务是比较常用的功能,如一个部门定期向上级部门上报数据是一个典型的例子,下面就简单说说在.net mvc中如何实现定时执行某个功能的方法. 1.首先修改Glocal.asax文件,在 ...
- MVC4 +EasyUI 使用TreeGrid 方法
用easyui已经有2年了,换了新环境,要求用mvc开发,所以想把原来的项目直接用mvc重构. 在使用TreeGird的时候出现了问题,发现在转换为treegrid的json 很费劲,一直都是用的ea ...
- MVC4 下DropDownList使用方法
与MVC3相比,差别很大: 表现形式一: public ActionResult Main() { List<SelectListItem> items = new List<Sel ...
- MVC4 下DropDownList使用方法(转)
与MVC3相比,差别很大: 表现形式一: public ActionResult Main() { List<SelectListItem> items = new List<Sel ...
随机推荐
- 【Flume】数据采集引擎Flume
一.概述 flume是一个高效的.可靠的.可用的分布式海量日志数据收集.聚合.传输的工具. Flume is a distributed, reliable, and available servic ...
- 类型“Observable<Response>”上不存在属性“map”
出错提示: angular2 Property 'map' does not exist on type 'Observable<Response>' 类型“Observable<R ...
- ecshop跨站漏洞详情及修补网站漏洞
ecshop目前最新版本为4.0,是国内开源的一套商城系统,很多外贸公司,以及电商平台都在使用,正因为使用的人数较多,很多攻击者都在挖掘该网站的漏洞,就在最近ecshop被爆出高危漏洞,该漏洞利用跨站 ...
- Go正则处理
Go语言通过regexp标准包为正则表达式提供了官方支持 包中有三个函数判定是否匹配,匹配返回true,否则返回false,这三个函数只是输入源不同 func Match(pattern string ...
- Go Web 问题集-持续更新
前端: 导入静态js,css报错,在确保js和css语法编写正确的前提下 GET 错误: 等问题 1.在服务器中运行:静态服务文件路径设置错误 2.本地运行:相对路径设置错误 3 ...
- MySQL入门第三天(下)——存储过程与存储引擎
一.存储过程 1.简介 原始的SQL执行的流程: 通过存储过程,便可以简化以上流程,那么存储过程是什么,如何进行性能提高呢? 是什么? 存储过程是可编程的函数,在数据库中创建并保存,可以由SQL语句和 ...
- c#调用c++库函数
如果是非托管的,就用DllImport,举例 using System; using System.Runtime.InteropServices; class MainApp ...
- 北京Uber优步司机奖励政策(1月3日)
滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...
- jQuery File Upload 文件上传插件使用一 (最小安装 基本版)
jQuery File Upload 是一款非常强大的文件上传处理插件,支持多文件上传,拖拽上传,进度条,文件验证及图片音视频预览,跨域上传等等. 可以说你能想到的功能它都有.你没想到的功能它也有.. ...
- 移动onenet基础通信套件V1.08版本的AT指令测试
1. 本次测试版本V1.08,AT+MIPLCREATE,首先需要一个配置文件.该指令创建一个基础通信套件的实例 2. 看下CGFID=2的配置,这个连接类型,UDP是1还是0?用户名和密码是什么?哪 ...