如何使用给定值填充MVC中的下拉列表

时间:2012-05-20 08:36:33

标签: c# asp.net-mvc drop-down-menu

我有一个带有外键的视图模型到另一个模型,基于此,我想创建一个dropDownList,它将显示所选的值名称,并将给我所有其他选项,以便我可以将其更改为任何我想要。 这是我的创建形式:

@using (Html.BeginForm()) {
@Html.ValidationSummary(true, "Failed creating the feed")
<fieldset>
    <legend>FeedViewModel</legend>

    <div class="editor-label">
        @Html.HiddenFor(model => model.FeedId)
    </div>

    <div class="editor-label">
        @Html.LabelFor(model => model.LinkUrl)
    </div>
    <div class="editor-field">
        @Html.EditorFor(model => model.LinkUrl)
        @Html.ValidationMessageFor(model => model.LinkUrl)
    </div>

    <div class="editor-label">
        @Html.LabelFor(model => model.FolderId)
    </div>
    <div class="editor-field">

    </div>

    <p>
        <input type="submit" value="Create" />
    </p>
</fieldset>

我想在Last div创建dropDownList,我已经有了我的模型的值。 我怎么能这样做?

1 个答案:

答案 0 :(得分:0)

您应该使用Html.DropDownListFor扩展方法:

@Html.DropDownListFor(m => m.ImageId, new SelectListItem[] {
            new SelectListItem {
                Selected = true,
                Text = "Text 1",
                Value = "Fileld Value 1"
            },
            new SelectListItem {
                Selected = false,
                Text = "Text 2",
                Value = "Fileld Value 2"
            }
        });

当然第二个参数IEnumerable可以从数据库填充而不是硬编码。