Asp.netMVC5でのHtml.DropDownListの使用



Use Html Dropdownlist Asp



A.静的ドロップダウンリストアイテムのバインド

ドロップダウンリスト内の静的アイテムをバインドします。SelectListItemのコレクションをデータソースのドロップダウンリストとして使用できます。 var data = from p in db.PersonalDetails join f in db.Files on p.AutoId equals f.PersonalDetailsId select new { PersonName = p.FirstName, MyFileName = f.FileName } SelectList list = new SelectList(data, 'MyFileName', 'PersonName') ViewBag.Roles = list

上記のコードスニペットでは、



最初のパラメータはドロップダウンリストの名前です

2番目のパラメーターはデータソースとして使用されるSelectListItemのドロップダウンリスト内のコレクションであり、3番目のパラメーターはデフォルト値です。「select = true」が選択されている場合、どのSelectListItemにも指定されていません。



3番目のパラメーターは、ドロップダウンリストに表示されるデフォルトのデフォルトの空のアイテムです。

4番目のパラメーターは、ドロップダウンリストに書き込まれるスタイル/クラスまたはその他のHTML属性(htmlObjectAttributes)です。

次に、複数のテーブルデータをバインドします



@ Html.DropDownList('MultipleTables'、ViewBag.RolesなのでSelectList)

コントローラの操作方法コード

dataTextFileld 上記のコードスニペットでは、 参加しました どちらのテーブルもLINQを使用して、PersonNameとMyFileNameのプロパティを持つオブジェクトを形成します。指定されたdataValueField with SelectListItem ドロップダウンリストに変換します。次に、コレクションはViewBag.Rolesに設定され、データソースのドロップダウンリストのビューとして使用されます。

第三に、ドロップダウンリストでモデルをバインドします

以下のコードスニペットを使用して、モデルプロパティをドロップダウンリストにバインドします。
1 @Html.DropDownList('dropRoles', new List() 2  { 3 new SelectListItem() { Text= 'Yes', Value = 'true' }, 4 new SelectListItem() { Text= 'No', Value = 'false', Selected = true } 5 }, 'Select ...'),new { @class = 'myClass', style = 'width: 250px' })
このプロパティ値は、コントローラーのアクションメソッド
|_+_|
に設定します。上記のコードスニペットでは、コードの3行目に、リストから選択されたすべてのアイテムが作成されていることに注意してください。
public IEnumerable Categories { get set }
オブジェクトによって指定された値は、カテゴリIDとテキストとしてのカテゴリ名です。
このコレクションがドロップダウンリストで制限されている場合、カテゴリIDはアイテムの値として使用され、カテゴリ名はドロップダウンリストアイテムのテキストとして使用されます。第四に、ドロップダウンリストアイテムのポストバックを変更します

ASP.NET MVCのフォームでドロップダウンリストアイテムの自動ポストバックを変更するには、htmlObjectAttributesでonchange属性を指定します。

model.Categories = db.CategoryModels.Where(c => c.SectionId == sectionId && c.Active == true).OrderBy(ct => ct.CategoryName).ToList().  Select(x => new SelectListItem { Value = x.CategoryId.ToString(), Text = x.CategoryName }).ToList() 
上記のコードスニペットでは、onchangeプロパティは、ユーザーがドロップダウンリストの選択を変更したときに、フォームをサーバーに送信するように強制します。 この記事の参照先:http://www.dotnetfunda.com/articles/show/2918/working-with-dropdownlist-in-aspnet-mvc 関連リソース:http://www.cnblogs.com/kirinboy/archive/2009/10/28/use-dropdownlist-in-asp-net-mvc.html

転載:https://www.cnblogs.com/QlBsa/p/3953131.html