編集ビューでの複数選択値バインディングのMVC5ドロップダウンリスト

ラージ

編集ビューにselect2multiselectドロップダウンがあります。選択した値をドロップダウンにバインドしようとすると、バインドに失敗します。助けていただければ幸いです。* .cshtmlおよび* .csファイルのコードスニペットを以下に示します。

@Html.DropDownListFor(model => model.Items, new MultiSelectList(ViewBag.ItemsBag, "Value", "Text", Model.ItemsSelected.Select(x => x.Value)), new { @class = "form-control features-segments select2-multiselect-checkbox", multiple = "multiple" })

ViewBag.ItemsBag = db.Items.Select(v => new SelectListItem
            {
                Text = v.ItemName,
                Value = v.ItemId.ToString()
            });

ModelVM modelVM = new ModelVM()
            {
                ItemsSelected = SelectedItems.Items.Select(x => new SelectListItem() { Text = x.ItemName, Value = x.ItemId.ToString() })
            };

アイテムモデルには以下のアイテムがあります。プロパティItemsSelectedはnullではなく、3つの値があり、ViewBag.ItemsBagもnullではなく、データベースのすべてのアイテムが含まれています。これらのプロパティは両方とも、TextプロパティとValueプロパティを持つSelectListItemタイプです。

public int FeatureId { get; set; }
public string FeatureName { get; set; }
public string ReferenceName { get; set; }
public FeatureSection SectionName { get; set; }//Enum
public FeatureType Type { get; set; }//Enum
public bool DefaultBoolValue { get; set; }
public string DefaultTextValue { get; set; }
public IEnumerable<SelectListItem> ItemsSelected { get; set; }
public virtual ICollection<Item> Items { get; set; } = new List<Item>();
Tetsuya Yamamoto

ViewBagこのような定義でアイテム値が提供されているため、文字列値を明確に示しています。

ViewBag.ItemsBag = db.Items.Select(v => new SelectListItem
{
    Text = v.ItemName,
    Value = v.ItemId.ToString() // implies all values are strings
});

次に、DropDownListFor/でバインドするプロパティは、正しくバインドするために、またはタイプするListBox必要があります。使用は複雑なオブジェクトであるためバインドされませんが、ヘルパーはバインドする値型(数値型/文字列)を必要とします。List<string>string[]ICollection<Item>

したがって、List<string>最初にタイプを使用してプロパティを作成する必要があります

public List<string> SelectedValues { get; set; }

そして、ListBoxFor代わりにそのプロパティでヘルパーを使用します。

@Html.ListBoxFor(model => model.SelectedValues, new MultiSelectList(ViewBag.ItemsBag, "Value", "Text", Model.ItemsSelected.Select(x => x.Value)), new { @class = "form-control features-segments select2-multiselect-checkbox", multiple = "multiple" })

注意:

ItemIdプロパティにintタイプがある場合(およびすべての値がに変換可能である場合int)、List<int>/のint[]代わりにList<string>/タイプを試してくださいstring[]

public List<int> SelectedValues { get; set; }

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

ビュー内のドロップダウンリストへのMVCバインディングモデル

分類Dev

編集ページMVCでドロップダウンリストの選択値を設定する方法

分類Dev

Asp.net MVC5ブートストラップ:編集ページのドロップダウンリストで選択した値をフェッチできません

分類Dev

デフォルトで表示される値の複数のドロップダウンリストのデータバインディング

分類Dev

ドロップダウンリストの選択に基づいて、データがグリッドビューにバインドされない

分類Dev

複数のドロップダウンリストに同じアイテムを選択することを制限するmvc5

分類Dev

グリッドビュー編集ボタンの行でリストの値を選択します

分類Dev

アイテムを選択するためのMVC5ドロップダウンリスト

分類Dev

同じビューでmvc5を使用して、ドロップダウンリストからテキストボックスにドロップダウンで選択した値を渡す方法は?

分類Dev

別のテーブルからのビューのドロップダウンリストmvc5

分類Dev

グリッドビュー編集テンプレートのドロップダウンリストが列の値を更新しない

分類Dev

別のドロップダウンに基づくブートストラップ複数選択フィルタリング値

分類Dev

jqueryのデータベースから複数選択ドロップダウンバインドの選択されたID値を取得します

分類Dev

ドロップダウンリストの選択に応じた値で部分ビューを更新する方法

分類Dev

MVCビューはドロップダウンリストでnull値を選択しません

分類Dev

かみそりビューのintのmvcドロップダウンバインディング

分類Dev

SAPUI5ドロップダウンリストのデータバインディング

分類Dev

グリッドビューのドロップダウンバインディング

分類Dev

グリッドビューのドロップダウンバインディング

分類Dev

MVC5ドロップダウンリストの選択された値を設定するにはどうすればよいですか?

分類Dev

MVC5ドロップダウンリストの検証

分類Dev

MVCビュー内でドロップダウンリストの選択した値を設定するにはどうすればよいですか?

分類Dev

DjangoVue.js-複数選択のドロップダウンリストのレンダリング

分類Dev

ドロップダウンで選択したアイテムのテキストをグリッドビューの特定の列に追加します

分類Dev

Angularを使用してMVCビューのドロップダウンリストで選択された値を保持する必要があります

分類Dev

ドロップダウンリストのWebVBAで複数のアイテムを選択できません

分類Dev

MVCドロップダウンリストを使用して、フォームを編集し、ドロップダウンにデータを表示し、ドロップダウンに以前に選択したアイテムを表示する方法は?

分類Dev

ドロップダウンリストの選択した値を渡して、MVCのコントローラーで関数を取得する方法

分類Dev

選択インデックスが変更されている間、ドロップダウンリスト値が別のグリッドビュー列値に更新されます

Related 関連記事

  1. 1

    ビュー内のドロップダウンリストへのMVCバインディングモデル

  2. 2

    編集ページMVCでドロップダウンリストの選択値を設定する方法

  3. 3

    Asp.net MVC5ブートストラップ:編集ページのドロップダウンリストで選択した値をフェッチできません

  4. 4

    デフォルトで表示される値の複数のドロップダウンリストのデータバインディング

  5. 5

    ドロップダウンリストの選択に基づいて、データがグリッドビューにバインドされない

  6. 6

    複数のドロップダウンリストに同じアイテムを選択することを制限するmvc5

  7. 7

    グリッドビュー編集ボタンの行でリストの値を選択します

  8. 8

    アイテムを選択するためのMVC5ドロップダウンリスト

  9. 9

    同じビューでmvc5を使用して、ドロップダウンリストからテキストボックスにドロップダウンで選択した値を渡す方法は?

  10. 10

    別のテーブルからのビューのドロップダウンリストmvc5

  11. 11

    グリッドビュー編集テンプレートのドロップダウンリストが列の値を更新しない

  12. 12

    別のドロップダウンに基づくブートストラップ複数選択フィルタリング値

  13. 13

    jqueryのデータベースから複数選択ドロップダウンバインドの選択されたID値を取得します

  14. 14

    ドロップダウンリストの選択に応じた値で部分ビューを更新する方法

  15. 15

    MVCビューはドロップダウンリストでnull値を選択しません

  16. 16

    かみそりビューのintのmvcドロップダウンバインディング

  17. 17

    SAPUI5ドロップダウンリストのデータバインディング

  18. 18

    グリッドビューのドロップダウンバインディング

  19. 19

    グリッドビューのドロップダウンバインディング

  20. 20

    MVC5ドロップダウンリストの選択された値を設定するにはどうすればよいですか?

  21. 21

    MVC5ドロップダウンリストの検証

  22. 22

    MVCビュー内でドロップダウンリストの選択した値を設定するにはどうすればよいですか?

  23. 23

    DjangoVue.js-複数選択のドロップダウンリストのレンダリング

  24. 24

    ドロップダウンで選択したアイテムのテキストをグリッドビューの特定の列に追加します

  25. 25

    Angularを使用してMVCビューのドロップダウンリストで選択された値を保持する必要があります

  26. 26

    ドロップダウンリストのWebVBAで複数のアイテムを選択できません

  27. 27

    MVCドロップダウンリストを使用して、フォームを編集し、ドロップダウンにデータを表示し、ドロップダウンに以前に選択したアイテムを表示する方法は?

  28. 28

    ドロップダウンリストの選択した値を渡して、MVCのコントローラーで関数を取得する方法

  29. 29

    選択インデックスが変更されている間、ドロップダウンリスト値が別のグリッドビュー列値に更新されます

ホットタグ

アーカイブ