MVC 中@Html.DropDownListFor() 设置选中项 这么不好使 ?

lkf181 2014-08-21 11:15:09
由于不知道错误原因在哪 我尽量把代码都贴出来吧:
重点是:在 Controller 类里 我给 SelectListItem集合的 某项 Selected 赋值为TRUE 在视图中就应该 将该项选中吧?? 在我这怎么没还是呢? 没有任何项选中!!
Controller 类:
using S01MVC.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace S01MVC.Controllers
{
public class LkfValidateController : Controller
{
//
// GET: /LkfValidate/

public ActionResult Index()
{
LkfValidateData model = new LkfValidateData()
{
InCome = 1000000,
LastLoginTime = DateTime.Now.AddDays(-5),
UserPassword = "12345678",
UserName = "郭德纲",
UserID = 1
};
List<SelectListItem> list = new List<SelectListItem>();
list.Add(new SelectListItem() { Text = "500元以下", Value = "500" });
list.Add(new SelectListItem() { Text = "1000元以下", Value = "1000" });
list.Add(new SelectListItem() { Text = "一万元以下", Value = "10000" });
list.Add(new SelectListItem() { Text = "十万元以下", Value = "100000"});
list.Add(new SelectListItem() { Text = "一百万元以下", Value = "1000000", Selected = true });
ViewData["income"] = list.AsEnumerable();
return View(model);
}
}
}


Views 视图:


@model S01MVC.Models.LkfValidateData
@{
Layout = null;
}

<!DOCTYPE html>

<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
<style type="text/css">
#tbinfo{border:1px solid #0094ff;
margin:auto}
#tbinfo td{
border: 1px solid #0094ff;

}
</style>
</head>
<body>
<div>
@using(Html.BeginForm("edit","LkfValidateData",FormMethod.Post))
{
IHtmlString stralogn = Html.Raw("align=\"right\"");
<table id="tbinfo">
<tr><td align="right">@Html.LabelFor(c=>c.UserID)</td><td>@Model.UserID</td></tr>
<tr><td @stralogn>@Html.LabelFor(c => c.UserName)</td><td>@Html.TextBoxFor(c => c.UserName) </td></tr>
<tr><td @stralogn>@Html.LabelFor(c => c.UserPassword)</td><td>@Html.EditorFor(c=>c.UserPassword)</td></tr>
<tr><td @stralogn>@Html.LabelFor(c => c.LastLoginTime)</td><td>@Html.DisplayTextFor(c=>c.LastLoginTime)</td></tr>
<tr><td @stralogn>@Html.LabelFor(c => c.InCome)</td><td>@Html.DropDownListFor(c=>c.InCome,ViewData["income"] as IEnumerable<SelectListItem>)</td></tr>

</table>
}
</div>
</body>
</html>


模型类:LkfValidateData

namespace S01MVC.Models
{
public class LkfValidateData
{
[DisplayNameAttribute("用户ID")]
public long UserID { get; set; }
[DisplayName("用户名")]
public string UserName { get; set; }
[DisplayName("用户密码")]
[DataTypeAttribute(DataType.Password)]
public string UserPassword { get; set; }
[DisplayName("最后登录时间")]
public DateTime? LastLoginTime { get; set; }
[DisplayName("收入")]
public decimal InCome { get; set; }
}
}
...全文
1220 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
风尘不羁 2016-04-27
  • 打赏
  • 举报
回复
还真是这样,奇葩啊
lkf181 2014-08-21
  • 打赏
  • 举报
回复
怎么 key的名字 还有关系呢 !?
叫我 Teacher 周 2014-08-21
  • 打赏
  • 举报
回复
引用 1 楼 guyongqing52 的回复:
名称改成不一样的,即可,结贴吧
眼睛真好啊
guyongqing52 2014-08-21
  • 打赏
  • 举报
回复

名称改成不一样的,即可,结贴吧

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧