3

ドロップダウンメニューに入力されたアイテムのコレクションがあります:

string myUserName = "PopulatedWithSomeUser";

var users= from x in userRepository.GetAll()
    select new SelectListItem
       {
          Value = x.Id.ToString(),
          Text = x.Name,
          Selected = (x.Name == myUserName )
       };

これにより、オブジェクトが正しく設定され、選択された項目が設定されます。次に、ViewModel を使用してこれを View に渡し、Populate/select を試みます。

私は試した:

   @Html.DropDownListFor(model=>model.Users,new SelectList(Model.Users),new {id = "add-user-list", name="add-user-list"})

また

@Html.DropDownListFor(model=>model.Users,new SelectList(Model.Users,"Value","Text","Selected"),new {id = "add-user-list", name="add-user-list"})

また

@Html.DropDownListFor(model=>model.Users,Model.Users, new {id = "add-user-list", name="add-user-list"})

リストは正しく入力されていますが、「選択した」アイテムが選択されていません。私は何を間違っていますか?ありがとう。

4

1 に答える 1

2

最初のパラメータとして、フォームの送信後にデータを受け取るためのフィールドを渡す必要があります。他のすべては正しく見えます:

@Html.DropDownListFor(model=>model.UserId, Model.Users)

または、独自のIDと名前を指定する場合は、これ( msdn)を使用することをお勧めします。

@Html.DropDownList("add-user-list", Model.Users, new {id = "add-user-list"})
于 2012-06-15T00:06:21.043 に答える