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 ...
随机推荐
- java的值传递机制
一.练习:编写Java程序,将二维数组中的行列互调显示出来. 代码1为自己编写: package com.xxgpra.CH6; public class Hangliehudiao_pra4 { p ...
- java语言描述 用抽象类模拟咖啡机的工作
import java.util.Scanner; class Test { public static void main(String[] args) { coffee per = new cof ...
- 推荐 的FPGA设计经验(1)组合逻辑优化
主要内容摘自Quartus prime Recommended Design Practices For optimal performance, reliability, and faster ti ...
- Java设计模式(9)——结构型模式之装饰模式(Decorator)
一.概述 动态地给一个对象添加一些额外的职责.就增加功能来说, Decorator模式相比生成子类更为灵活.该模式以对客 户端透明的方式扩展对象的功能. UML简图 角色 在持有Component的引 ...
- WMI、WQL语言、WQL测试工具wbemtest.exe
Windows Management Instrumentation (WMI) 是 Windows 操作系统的一个组件,允许通过编程方式访问应用程序.服务和其他计算机组件的管理信息(例如,配置设置和 ...
- 北京Uber司机7月13日奖励政策更新
各位司机朋友: 从7月13日(周一)起,奖励政策将进行调整,具体如下: 滴滴快车单单2.5倍,注册地址:http://www.udache.com/如何注册Uber司机(全国版最新最详细注册流程)/月 ...
- (转) 如何从 0 开始学 ruby on rails (漫步版)
原文:http://readful.com/post/12322300571/0-ruby-on-rails ruby 是一门编程语言,ruby on rails 是 ruby 的一个 web 框架, ...
- Android官方开发文档Training系列课程中文版:目录
Android官方开发文档Training系列课程中文版:目录 引言 在翻译了一篇安卓的官方文档之后,我觉得应该做一件事情,就是把安卓的整篇训练课程全部翻译成英文,供国内的开发者使用,尤其是入门开 ...
- 在ubuntu安装python, theano, keras , Spearmint, Mongodb
系统配置: Ubuntu 14 (其他系统也差不多如下操作) 1. 通过anaconda安装 python 地址: https://www.continuum.io/downloads#linux 2 ...
- Mate20兼容性如何?WeTest带你抢先测!
自从九月份 iPhone XS 系列发布后,WeTest团队迅速入库了iPhone XS和iPhone XR设备,十月份国内巨头华为也重磅推出了一款“Mate 20”设备,让下半年的国内手机市场又热闹 ...