方法: Windows フォームの ComboBox または ListBox コントロールをデータにバインドする
ComboBox と ListBox をデータにバインドして、データベース内のデータを参照する、新しいデータを入力する、既存のデータを編集するなどのタスクを実行できます。
ComboBox コントロールまたは ListBox コントロールをバインドするには
DataSource
プロパティをデータ ソース オブジェクトに設定します。 有効なデータ ソースには、データにバインドされている BindingSource、データ テーブル、データ ビュー、データセット、データ ビュー マネージャー、配列、IList インターフェイスを実装する任意のクラスなどがあります。 詳細については、「Windows フォームがサポートするデータ ソース」を参照してください。テーブルにバインドする場合は、
DisplayMember
プロパティをデータ ソース内の列の名前に設定します。- または -
IList にバインドする場合は、表示メンバーをリスト内の型のパブリック プロパティに設定します。
Private Sub BindComboBox() ComboBox1.DataSource = DataSet1.Tables("Suppliers") ComboBox1.DisplayMember = "ProductName" End Sub
private void BindComboBox() { comboBox1.DataSource = dataSet1.Tables["Suppliers"]; comboBox1.DisplayMember = "ProductName"; }
注意
ArrayList など、IBindingList インターフェイスが実装されていないデータ ソースにバインドされている場合は、データ ソースの更新時にバインドされたコントロールのデータは更新されません。 たとえば、ArrayList にバインドされたコンボ ボックスがあり、 ArrayList にデータが追加されている場合、これらの新しい項目はコンボ ボックスに表示されません。 ただし、コントロールがバインドされている BindingContext クラスのインスタンスで SuspendBinding メソッドと ResumeBinding メソッドを呼び出すことにより、コンボ ボックスを強制的に更新できます。
関連項目
.NET Desktop feedback