次の方法で共有


方法: Windows フォームコンボボックスまたは ListBox コントロールをデータにバインドする

ComboBoxListBox をデータにバインドして、データベース内のデータの参照、新しいデータの入力、既存のデータの編集などのタスクを実行できます。

ComboBox コントロールまたは ListBox コントロールをバインドするには

  1. DataSource プロパティをデータ ソース オブジェクトに設定します。 使用できるデータ ソースには、データ、データ テーブル、データ ビュー、データセット、データ ビュー マネージャー、配列、または IList インターフェイスを実装する任意のクラスにバインドされた BindingSource が含まれます。 詳細については、「Windows フォームでサポートされるデータ ソース」を参照してください。

  2. テーブルにバインドする場合は、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 メソッドを呼び出すことによって、コンボ ボックスを強制的に更新できます。

関連項目