2012-01-19 1 views
0

http://msdn.microsoft.com/en-us/library/dd470803.aspxによれば、MultiSelectList(IEnumerable, IEnumerable)コンストラクタは、2つのパラメータ、すなわちitemsselectedValuesを取ります。 selectedValues作業を行いどのように正確にMultiSelectListコンストラクタ

  1. ドキュメントには、私はちょうど2つのポイントを明確にしたい完全に明示的ではないでしょうか?このコンストラクタはコレクションを反復処理し、各要素に対して.Selected = Trueを設定するだけですか?

  2. selectedValuesitemsのサブセットである必要がありますか?これは正確に(つまり、ToStringの値が一致している限り)どのように定義されていますか?

具体的には、私はa jQuery multiselect pluginで遊んでいますし、(すなわち「選択」リストがすでに初期化時に特定の要素によって移入された)そのプラグインのデモで行われているもの、実質的にやろうとしています。

答えて

0

HTML:

<%=Html.ListBoxFor(model => model.tempCategories, (MultiSelectList)(ViewData["Categories"]), new {@size = "5" })%> 

コントローラーコード:

List<Categories> categoriesList = categories.Select(); 
ViewData["Categories"] = GenCategoryMultiList(categoriesList); 


private System.Web.Mvc.MultiSelectList GenCategoryMultiList(List<TemplateCategories> entity) 
    { 
     entity = entity.OrderBy(e => e.CategoryName).ToList(); 
     System.Web.Mvc.MultiSelectList selectList = new System.Web.Mvc.MultiSelectList(entity, "CategoryID", "CategoryName"); 
     return selectList; 
    } 

私はjQueryの複数選択でこれを使用しています。作業コード...

関連する問題