Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 为什么我选择的值在下拉列表(asp.net mvc)中显示两次_C#_Asp.net Mvc_Drop Down Menu - Fatal编程技术网

C# 为什么我选择的值在下拉列表(asp.net mvc)中显示两次

C# 为什么我选择的值在下拉列表(asp.net mvc)中显示两次,c#,asp.net-mvc,drop-down-menu,C#,Asp.net Mvc,Drop Down Menu,我有一个asp.net mvc视图,其中包含以下代码以显示下拉列表: <% = Html.DropDownList("filter", Model.MyList, Model.MyDefaultValue, new { @id = "filter", @class = "complete" })%> Model.MyList是一个列表,其中包含我的项目,顶部有一个空白项目,模型为。MYDefaultValue是一个字符串 当我运行这个程序时,它看起来很有效,但我会两次列出我的

我有一个asp.net mvc视图,其中包含以下代码以显示下拉列表:

 <% = Html.DropDownList("filter", Model.MyList, Model.MyDefaultValue, new { @id = "filter", @class = "complete" })%>

Model.MyList是一个列表,其中包含我的项目,顶部有一个空白项目,模型为。MYDefaultValue是一个字符串

当我运行这个程序时,它看起来很有效,但我会两次列出我的默认值

让我们假设我的清单是:

福特
丰田
雪佛兰

我的默认值是丰田

当我单击下拉列表时,我得到:

丰田

福特
丰田
雪佛兰


您可以看到Toyota被添加为第一项和第四项。

Html.DropDownList()方法接受一个optionLabel字符串参数,该参数的文本插入到下拉列表的顶部(带有空值)。它不一定与选择列表中的哪个项目有关


您可以使用MyList创建一个
SelectList
,并在将其传递给
Html.DropDownList()

之前指定一个所选值(请参见),只需猜测一下:“default”是第一个值。不是选定的值。(因此,我假设您实际上正在设置第一个值,并且可能有一个单独的选定属性可以在控件中设置)@DA-您是正确的。为什么把你的回答放在评论里而不是答案里