0

ページに入るときにデフォルトとして別の値を持つ解決策が見つかりません。それは常に私の最初の値です。

「選択リスト」の作成

            List<SelectListItem> list = new List<SelectListItem>();
        var x = 0;
        foreach (var lang in Enum.GetValues(typeof(ResourceHandler.Languages)))
        {
            list.Add(new SelectListItem { Selected = x == langInt, Value = x++.ToString(), Text = lang.ToString() });
        }

ビューモデル:

    public class SettingsViewModel
{
    public int LanguageId { get; set; }
    public List<SelectListItem> Language { get; set; }
}

意見:

@Html.DropDownListFor(x=>x.LanguageId, new SelectList(Model.Language,"Value","Text"))
4

2 に答える 2

6

このDropDownList のオーバーロードを拡張メソッドに使用できます。

こんな感じになります

@Html.DropDownListFor(x=>x.LanguageId, new SelectList(Model.Language,"Value","Text"),"--Choose A Language --")
于 2013-05-13T14:30:24.153 に答える