C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

■91945 / 1階層)  コンボボックスによる絞り込み
□投稿者/ 魔界の仮面弁士 (2301回)-(2019/08/12(Mon) 23:30:27)
No91943 (たかし さん) に返信
> の2つのテーブルがありフォーム上にはComboBox1ととComboBox2があります。

Windows Forms アプリケーションを作成していて、
tbl_部署というのは DataTable の事で良いでしょうか。

言語指定が無かったですが、comboBox1 ではなく ComboBox1 と書かれていたので、
とりあえず Visual Basic と仮定して書いてみます。


Public Class Form1
  Private ds As DataSet
  Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    ds = CreateSample()

    ds.Relations.Add("rel_部署_社員",
             ds.Tables("tbl_部署").Columns("部署コード"),
             ds.Tables("tbl_社員").Columns("部署コード"))

    Me.BindingSource1.DataSource = ds
    Me.BindingSource1.DataMember = "tbl_部署"

    Me.BindingSource2.DataSource = Me.BindingSource1
    Me.BindingSource2.DataMember = "rel_部署_社員"

    ComboBox1.DataSource = Me.BindingSource1
    ComboBox1.ValueMember = "部署コード"
    ComboBox1.DisplayMember = "部署名"
    ComboBox2.DataSource = Me.BindingSource2
    ComboBox2.ValueMember = "社員コード"
    ComboBox2.DisplayMember = "社員名"
  End Sub

  Private Function CreateSample() As DataSet
    Dim ds As New DataSet("Sample") With {.CaseSensitive = True}
    Dim tbl1 As DataTable = ds.Tables.Add("tbl_部署")
    Dim tbl2 As DataTable = ds.Tables.Add("tbl_社員")

    tbl1.Columns.Add("部署コード", GetType(Decimal)).AllowDBNull = False
    tbl1.Columns.Add("部署名", GetType(String)).AllowDBNull = False
    tbl1.PrimaryKey = New DataColumn() {tbl1.Columns("部署コード")}

    tbl2.Columns.Add("社員コード", GetType(String)).AllowDBNull = False
    tbl2.Columns.Add("社員名", GetType(String)).AllowDBNull = False
    tbl2.Columns.Add("部署コード", GetType(Decimal)).AllowDBNull = True
    tbl2.PrimaryKey = New DataColumn() {tbl2.Columns("社員コード")}

    tbl1.Rows.Add(10000D, "総務部")
    tbl1.Rows.Add(10020D, "総務部総務課")
    tbl1.Rows.Add(12000D, "営業部")
    tbl1.Rows.Add(12010D, "営業部営業一課")

    tbl2.Rows.Add("AX0020", "金田 一太郎", 10000D)
    tbl2.Rows.Add("BY0112", "今西 欣治", 10020D)
    tbl2.Rows.Add("DX0987", "有馬 貴臣", 10020D)
    tbl2.Rows.Add("DX1024", "山口 六平太", 10020D)
    tbl2.Rows.Add("PN0132", "緒方 賢太", 12000D)
    tbl2.Rows.Add("PC1024", "片岡 孝夫", 12010D)
    tbl2.Rows.Add("PC2048", "久米 広明", 12010D)

    ds.AcceptChanges()
    Return ds
  End Function
End Class
編集キー/

前の記事(元になった記事) 次の記事(この記事の返信)
←コンボボックスによる絞り込み /たかし →Re[2]: コンボボックスによる絞り込み /たかし
 
上記関連ツリー

コンボボックスによる絞り込み / たかし (19/08/12(Mon) 18:23) #91943
コンボボックスによる絞り込み / 魔界の仮面弁士 (19/08/12(Mon) 23:30) #91945 ←Now
  └ Re[2]: コンボボックスによる絞り込み / たかし (19/08/15(Thu) 15:44) #91972
    ├ Re[3]: コンボボックスによる絞り込み / WebSurfer (19/08/15(Thu) 16:48) #91974
    └ Re[3]: コンボボックスによる絞り込み / 魔界の仮面弁士 (19/08/15(Thu) 16:45) #91973
      └ Re[4]: コンボボックスによる絞り込み / たかし (19/08/16(Fri) 09:06) #91988
        ├ Re[5]: コンボボックスによる絞り込み / 魔界の仮面弁士 (19/08/16(Fri) 10:24) #91991
        ├ Re[5]: コンボボックスによる絞り込み / WebSurfer (19/08/16(Fri) 10:15) #91989
        ├ Re[5]: コンボボックスによる絞り込み / WebSurfer (19/08/16(Fri) 10:21) #91990
        └ Re[5]: コンボボックスによる絞り込み / WebSurfer (19/08/16(Fri) 12:20) #91999
          └ Re[6]: コンボボックスによる絞り込み / WebSurfer (19/08/16(Fri) 12:40) #92001
            └ Re[7]: コンボボックスによる絞り込み / たかし (19/08/16(Fri) 19:30) #92005
              ├New Re[8]: コンボボックスによる絞り込み / たかし (19/08/17(Sat) 08:04) #92006
              └New Re[8]: コンボボックスによる絞り込み / WebSurfer (19/08/17(Sat) 10:43) #92007

上記ツリーを一括表示 / 上記ツリーをトピック表示
 
上記の記事へ返信