2

ドロップダウン リストから選択する必要がある mvc の文字列項目のリストを操作しています。ドロップダウンリストは正常にバインドされており、値は正常に設定されていますが、反復されている現在のアイテムがドロップダウンリストのアイテムと一致していても、値として事前に選択されていないため、誰かが私を正しい方向に向けることができます?

    @for (var i = 0; i < Model.StringList.Count; i++)
    {
        if (BL.Helpers.StringHelpers.Validate(Model.DisplayStringSegments[i]))
        {
            <div id="editor-field">
                @Html.DropDownListFor(m => m.StringList[i], Model.PosterOptions, String.Empty, new { })
            </div>
        }
        else
        {
            <div id="editor-label">@Model.StringList[i]</div>
            @Html.HiddenFor(model => model.StringList[i])
        }
    }

したがって、この場合、Options は 1 つの値のみを保持する文字列のリストです。"Test" -> Text と Value の両方を設定します。

       PosterOptions.Add(new SelectListItem() { Text = "Test", Value = "Test" });

"Test" の値があるにもかかわらず、現在の StringList[i] が事前に選択されていない理由を誰か教えてもらえますか?

4

3 に答える 3

0

もう 1 つの方法は、次のように、リストの作成中に現在選択されているアイテムを設定することです。

PosterOptions.Add(new SelectListItem() { Text = "Test", Value = "Test", Selected = true });
于 2013-10-07T14:14:55.153 に答える