Asp.net mvc 最初不应选择DropDownList for control中的第一项

Asp.net mvc 最初不应选择DropDownList for control中的第一项,asp.net-mvc,selection,html.dropdownlistfor,Asp.net Mvc,Selection,Html.dropdownlistfor,我的OpenTestplanListViewModel有一个显示列表,其中有3个项目绑定到DropDownList 当用户明确选择DropDownList中的任何项目时,始终会自动选择第一个项目 使用ListBoxFor代替DropDownList for,我没有这个问题。 是否有可能告诉DropDownList“最初不要选择任何项目!” @model ITMS.Web.Models.OpenTestplanListViewModel @{ 布局=空; } @使用(Html.BeginForm

我的OpenTestplanListViewModel有一个显示列表,其中有3个项目绑定到DropDownList

当用户明确选择DropDownList中的任何项目时,始终会自动选择第一个项目

使用ListBoxFor代替DropDownList for,我没有这个问题。 是否有可能告诉DropDownList“最初不要选择任何项目!”

@model ITMS.Web.Models.OpenTestplanListViewModel
@{
布局=空;
} 
@使用(Html.BeginForm(“Open”、“Testplan”))
{ 
@Html.ValidationSummary(false)
@DropDownListFor(x=>x.TestplanIdAndTemplateId,新的SelectList(Model.DisplayList,“TestplanIdAndTemplateId”,“Name”),新的{@class=“listviewmodel”})
}
公共类OpenTestplanListViewModel
{
[必需(ErrorMessage=“未选择任何项目”)]
公共字符串TestplanIdAndTemplateId{get;set;}
公共IEnumerable显示列表{get;set;}
公共int?选择的测试计划ID
{
得到
{
return!String.IsNullOrEmpty(TestplanIdAndTemplateId)?Convert.ToInt32(TestplanIdAndTemplateId.Split(new[]{'.}).First()):(int?)null;
}
}
public int?SelectedTemplateId
{
得到
{
return!String.IsNullOrEmpty(TestplanIdAndTemplateId)?Convert.ToInt32(TestplanIdAndTemplateId.Split(new[]{'.}).Last()):(int?)null;
}
}
}
查看。我想如果我正确理解了你的问题,他们就解决了你的问题

希望这有帮助

@Html.DropDownListFor(x => x.TestplanIdAndTemplateId,
    new SelectList(Model.DisplayList, "TestplanIdAndTemplateId", "Name"),
    "-- Select Item --",
    new { @class = "listviewmodel" }) 
发布的问题@Display Name非常相似,只是看了一下。如果您想了解更多关于模型或控制器如何工作的信息,请在此处查看:


SelectExtensions
类的方法
DropDownListFor
重载。使用8种不同的方法,查看每种方法的详细信息。

您可以创建另一个“空”条目,查看是否已自动选择该条目。
@Html.DropDownListFor(x => x.TestplanIdAndTemplateId,
    new SelectList(Model.DisplayList, "TestplanIdAndTemplateId", "Name"),
    "-- Select Item --",
    new { @class = "listviewmodel" })