私のASP.NETフォルダには、3つの異なるSQLdatascourcesを持つカテゴリの種類が入っている3つのドロップダウンボックスがあります。各ドロップダウンリストは、その上にあるドロップダウンリストに依存します。
このことの目的は、dropdownlist1で何かを選択すると、dropdownlist2のデータソースが変更されることです。したがって、dropdown2のデータはdropdown1の選択された値に依存します。 dropdown3のデータは、dropdown2で選択した値に依存します。
初めての方は素敵です。しかし、dd1の値を選択した後、dd2の値を選択すると、失敗に終わります。
たとえば、dropdown1で値を2回変更すると、他のドロップダウンリストは変更されません。この種のものを行うに回答SQLdatasourceを使用したドロップダウンリスト階層
2
A
答えて
4
を事前に
Thxを、あなたはあなたのトップレベルに一度だけ読み込まれるドロップダウンリストで、そうでページのロード中にそれを置く!IsPostBackプロパティ、その周りを確認する必要があります。 次に、そのトップレベルのドロップダウンリストにOnSelectedIndexChanged()イベントをアタッチし、その中で2番目のレベルのドロップダウンリストの項目をクリアしてから、新しいデータソースを設定してください。
次に、2番目のレベルのドロップダウンリストでOnSelectedIndexChanged()を実行し、3番目のドロップダウンリストをクリアしてから入力してください。
その後、3番目のイベントは必要ありません。
0
はdd1
のOnSelectedIndexChanged
でdd2
を埋めるためにコードを入れて、(dd3
を埋めるために)dd2
のOnSelectedIndexChanged
ために同じことを行います。
0
キーで接続された2つの異なるテーブル(この例ではcompanyID)のコードの例。
public partial class Default : Page
{
public void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
var datacontext = new DataClasses1DataContext();
List<Company> companies = datacontext.Companies.ToList();
DropDownList1.DataSource = companies;
DropDownList1.DataValueField = "CompanyID";
DropDownList1.DataTextField = "CompanyName";
DropDownList1.DataBind();
}
}
public void DropDownList1SelectedIndexChanged(object sender, EventArgs e)
{
using (var dc = new DataClasses1DataContext())
{
DetailsView2.DataSource = null;
DetailsView2.DataBind();
DetailsView1.DataSource = dc.Companies.Where(d => d.CompanyID.Equals(DropDownList1.SelectedValue)).ToList();
DetailsView1.DataBind();
List<Contact> contacts =
dc.Contacts.Where(d => d.CompanyID.Equals(DropDownList1.SelectedValue)).ToList();
DropDownList2.DataSource = contacts;
DropDownList2.DataTextField = "LastName";
DropDownList2.DataValueField = "ContactID";
DropDownList2.DataBind();
if (contacts.Any())
{
DetailsView2.DataSource = dc.Contacts.Where(c => c.ContactID.Equals(DropDownList2.SelectedValue)).ToList();
DetailsView2.DataBind();
}
}
}
public void DropDownList2SelectedIndexChanged(object sender, EventArgs e)
{
using (var dc = new DataClasses1DataContext())
{
DetailsView2.DataSource = dc.Contacts.Where(c => c.ContactID.Equals(DropDownList2.SelectedValue)).ToList();
DetailsView2.DataBind();
}
}
}
関連する問題
- 1. Boost :: serializationを使用したXML階層
- 2. vuejsを使用した階層テーブル
- 3. SqlDatasourceを使用したグリッドビュー
- 4. EFまたはNHibernateを使用したリポジトリパターンの階層構造
- 5. WPFを使用した階層データ表示
- 6. Entity Frameworkとリポジトリパターンを使用した階層ごとのテーブル
- 7. Javaを使用したJSON階層のフラット化
- 8. xcodeを使用した階層的なマスターディテールアプリ
- 9. TPLを使用したWebClientリクエストのツリー階層
- 10. Lokiのタイプリスト類似::階層ジェネレータを使用したタイプリスト
- 11. 複合キャンバス/ DIVアプローチを使用したJS階層ツリーの例
- 12. D3.jsを使用した階層的な力のグラフ
- 13. 相対パスを使用したビュー階層の構築
- 14. DataGrid/GridViewコントロールを使用した階層データの表現
- 15. FunFXを使用したFlexアプリケーションオブジェクト階層の解析
- 16. SQL Server hierarchyidを使用したメニュー階層のリスト表示
- 17. CONNECT BYを使用したSQL - 3レベル階層クエリ?
- 18. Webアプリケーションコンテキストを使用したSpringコンテキスト階層
- 19. 多階層アーキテクチャでAutofacを使用
- 20. 3階層アーキテクチャと2階層アーキテクチャ
- 21. 階層
- 22. 階層
- 23. SqlDataSourceを使用したGridViewのページング
- 24. ダイナミック私はMSを使用して階層データについて研究してい階層データ
- 25. jsonを介したフレックスの階層ツリー
- 26. C++用の階層メモリアロケータライブラリ
- 27. 複数のドロップダウンリストを持つSqlDataSourceのフィルタリング
- 28. WebサービスAPIを使用してバージョン階層を取得
- 29. ノックアウトマッピングプラグインを使用して階層オブジェクトをカスタムクラスにマッピングする
- 30. JPAを使用して階層をモデル化する方法
THXのM8 それはすでに は今別の問題 私が何か秒の時間を再選択するとき、それは前の項目に新しいアイテムが追加されますが、ただそこにある^^束を助けました。 ドロップダウンリストを完全にクリアする方法はありますか?(ここでは、 "make choice here"というテキストの値が0の最初の項目を除く) – finxie
クール、私はこのシナリオを何度も繰り返してきましたが、最初の数回は厄介なことを覚えています –
ddlMyDropDownList.Items.Clear()、ddlMyDropDownList.Items.Add(New ListItem –