1

デスクトップアプリケーション用のSQLから情報にアクセスするためのDataSetを開発しました(WinFormsを使用)。

データを ComboBox にバインドすることは新しいことではありませんが、ASP.Net でほとんどのことを行ってきたので、使用したであろういくつかのクラスは明らかに WinForms では使用できません。

したがって、基本的には、コンボボックスを DataTable にバインドし、カスタム項目を に追加するために何をする必要があるかを知る必要がありIndex=0、基本的に「MC の選択」と述べています。このアイテムは SelectionChange でチェックされますが、条件付きの絞り込みを無効にできるように、セットに Nullification ListItem が必要です。

3 つのコンボボックスと 1 つのデータグリッドビューがあります。3 つのコンボボックスは、グリッドビューに表示される情報のリストを絞り込むことができますが、ユーザーが選択を解除できるようにしたいと考えています。

ここに私が試したものがありますが、どこにも行きません:
Private Sub frmMain_Load(sender As Object, e As EventArgs) Handles Me.Load
      'cboMC.Datasource = Me._mc.GetMC().AddMCRow("Select MC") <-- Did not Work
    cboMC.DataSource = Me._mc.GetMC()
    cboMC.Items.Insert(0, New Object() {"Select MC"}) <-- Current Try

    ...    
End Sub

他の提案はありますか?繰り返しますが、これはWinFormsアプリケーションであり、 ではありませんWebForms

最終リビジョン (@Tebc による)

cboMC.Items.Add("Select MC")
cboMC.Items.AddRange(Me._mc.GetMC().ToArray())

Invalidator がインデックス 0 であることを確認する上記の派生物

cboMC.Items.AddRange(Me._mc.GetMC().ToArray())
cboMC.Items.Insert(0, "Select MC")

魅力のように働きました....私を正しい道に導いてくれてありがとう。

4

1 に答える 1

2

正確な構文は覚えていませんが、私が行ったことは次のようなものです。

  1. サイズがデータ テーブルの数に設定された一時配列を作成します。
  2. cboMC.Items.Add("MC選択")
  3. データ テーブルの ToArray 関数を使用する
  4. cobMC.Items.AddRange([一時配列])
于 2013-01-14T20:05:37.607 に答える