0

MVC Web アプリケーション (正確には MVC 4) のページの ListBox に表示したい項目のリストがあります。この記事に従って、ListBox を簡単に作成しました。

ただし、カスタム値を「値」メンバーとして使用する必要があります (駄洒落で申し訳ありません)。代わりに言ってみましょう

Html.ListBoxFor(model => model.AvailableSelected, 
    new MultiSelectList(Model.AvailableProducts, "Id", 
    "Name", Model.AvailableSelected), 
    new { size = "6" })

必要です(コードが作成され、機能していません)

Html.ListBoxFor(model => model.AvailableSelected, 
    new MultiSelectList(Model.AvailableProducts, "Id + CategoryId", 
    "Name", Model.AvailableSelected), 
    new { size = "6" })

つまり、他のフィールドや変数に基づいて値を構築する必要があります。この「偽の」フィールドをアイテムクラスに実際に追加することが解決策になることはわかっていますが、これは非常に見苦しく、悪い習慣だと思います(特定の準プレゼンテーションの必要性のためだけにフィールドを実装します)。

これを行う方法はありますか?

4

1 に答える 1

0

見つけた。答えは SO にありましたが、投稿する前に見つけることができませんでした。申し訳ありません。

このスレッドを参照してください:新しい構造体またはクラスを作成することなく、HtmlHelper.DropDownList で使用するために MVC SelectList のデータ テキスト フィールドをカスタマイズできますか?

現在、受け入れられた回答としてマークされていませんが、@uvita の回答を使用することをお勧めします。

于 2013-11-06T10:57:55.357 に答える