0

ViewBag と DropDownListFor で少し問題が発生しました。以下のコードは正常に動作していますが、値が 0 の項目を「手動で」追加する必要があります。これを行う方法はありますか?

public ActionResult Create()
{

            ViewBag.ParagrafyRodzic = paragrafRepository.All;

            return View();
}

@Html.DropDownListFor(model => model.ParagrafID, ((IEnumerable<Projekty03.Models.Paragraf>)ViewBag.ParagrafyRodzic)
.Select(option => new SelectListItem
{
    Text = option.ParagrafNazwa.ToString(),
    Value = option.ParagrafID.ToString(),
    Selected = (Model != null) && (option.ParagrafID == Model.ParagrafParent)
}),Translate.ChooseList)

:) Tx ヘルプ

4

1 に答える 1

1

SelectList の作成には静的メソッドを使用します。モデルのどこかに次のようなものを置きます。

public static SelectList MakeSelectListDipendenze(SomeCollectionColl, bool emptyElem = true)
        {
            List<SelectListItem> Items = new List<SelectListItem>();
            if (emptyElem)
                Items.Add((new SelectListItem { Text = " ", Value = "-1" }));
            foreach (ElemInCollection Item in Coll)
            {
                SelectListItem AddMe = new SelectListItem();
                AddMe.Text = Item.Description;
                AddMe.Value = Item.Id.ToString();
                Items.Add(AddMe);
            }
            SelectList Res = new SelectList(Items, "Value", "Text");
            return Res;
        }

あなたの見解では、これを経由して参照します

@Html.DropDownListFor(x => x.Field, ModelClass.MakeSelectListUtenti(Model.Destinations), new { id="Destinations"})
于 2011-10-05T10:07:06.123 に答える