我有問題顯示與Html.DropDownListFor選定的值。我有一個觀點,使用多個下拉菜單,他們都被填充,但沒有被選中。每個下拉菜單都有相同的選擇選項,但選擇的值不同。 這裏是我的視圖模型:DropDownListFor不顯示選定的值
public class ViewPersonTargetingViewModel
{
public List<PersonTarget> Targets { get; set; }
public SelectList TargetStatuses { get; set; }
}
這就是我做的SelectList:
var statuses = DataAccess.GetPersonTargetStatuses();
TargetStatuses = new SelectList(statuses, "PersonTargetStatusUuid", "PersonTargetStatusName");
我PersonTarget類:
public class PersonTarget
{
public string PersonTargetStatusName { get; set; }
public Guid PersonTargetStatusUuid { get; set; }
//and more
}
這就是我如何創建一個DropDownList:
<%: Html.DropDownListFor(model => model.Targets[k].PersonTargetStatusUuid, Model.TargetStatuses)%>
其中k是通過Targe的迭代列表。
我用同樣的SelectList來填充所有的下拉菜單中,它包含了這樣的信息:
- 文字:一個值:b2e4a939-06d8-4052-8abf-5c1b2a5e8591
- 文字:B值: 0b59faaa-514D-4212-93cd-6b0a50b8f151
- 文本:C值:5575f3cf-33f8-41df-be73-a176a3db5ed5
例如,當我試圖讓它顯示 「B」,我給他正確的目標地位,但它仍然顯示第一個元素(「A」)被選中,我甚至會打印出我給他的值,並且我得到Model.Targets[k].PersonTargetStatusUuid
的值爲:0b59faaa-514d-4212-93cd-6b0a50b8f151(它是「B」的Guid),但它仍然顯示「A」。我跑出了想法如何解決這個問題。任何幫助非常感謝,謝謝:)。
之前試過,沒有工作。後來我發現DropDownListFor實際上不使用SelectList中的SelectedValue屬性,它只是像普通List一樣使用SelectList。 –