次の方法で共有


BindingContext コンストラクター

定義

BindingContext クラスの新しいインスタンスを初期化します。

public:
 BindingContext();
public BindingContext ();
Public Sub New ()

次のコード例では、2 つの新しいBindingContextオブジェクトを作成し、各オブジェクトをコントロールのGroupBoxプロパティにBindingContext割り当てます。 GroupBox1には TextBox1、および GroupBox2 (クラスのTextBox2メソッドControl.ControlCollectionを使用してAddRange実行される) が含まれています。 次に、2 つのTextBoxコントロールにオブジェクトを追加Bindingし、それぞれを同じデータ ソースとデータ メンバーにバインドします。 この例では、from コントロールを使用して異なるBindingManagerBaseオブジェクトにプロパティをBindingContextGroupBox設定Positionする 2 つのイベント ハンドラーも示しています。

void BindControls()
{
   System::Windows::Forms::BindingContext^ bcG1 = gcnew System::Windows::Forms::BindingContext;
   System::Windows::Forms::BindingContext^ bcG2 = gcnew System::Windows::Forms::BindingContext;
   groupBox1->BindingContext = bcG1;
   groupBox2->BindingContext = bcG2;
   textBox1->DataBindings->Add( "Text", ds, "Customers.CustName" );
   textBox2->DataBindings->Add( "Text", ds, "Customers.CustName" );
}

void Button1_Click( Object^ /*sender*/, EventArgs^ /*e*/ )
{
   groupBox1->BindingContext[ds, "Customers"]->Position = groupBox1->BindingContext[ds, "Customers"]->Position + 1;
}

void Button2_Click( Object^ /*sender*/, EventArgs^ /*e*/ )
{
   groupBox2->BindingContext[ds, "Customers"]->Position = groupBox2->BindingContext[ds, "Customers"]->Position + 1;
}
private void BindControls()
{
   BindingContext bcG1 = new BindingContext();
   BindingContext bcG2 = new BindingContext();

   groupBox1.BindingContext = bcG1;
   groupBox2.BindingContext = bcG2;

   textBox1.DataBindings.Add("Text", ds, "Customers.CustName");
   textBox2.DataBindings.Add("Text", ds, "Customers.CustName");
}

private void Button1_Click(object sender, EventArgs e)
{
   groupBox1.BindingContext[ds, "Customers"].Position += 1;         
}

private void Button2_Click(object sender, EventArgs e)
{
   groupBox2.BindingContext[ds, "Customers"].Position += 1;
}
Private Sub BindControls()
    Dim bcG1 As New BindingContext()
    Dim bcG2 As New BindingContext()
       
    groupBox1.BindingContext = bcG1
    groupBox2.BindingContext = bcG2
       
    textBox1.DataBindings.Add("Text", ds, "Customers.CustName")
    textBox2.DataBindings.Add("Text", ds, "Customers.CustName")
End Sub    
   
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    groupBox1.BindingContext(ds, "Customers").Position += 1
End Sub    
   
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
    groupBox2.BindingContext(ds, "Customers").Position += 1
End Sub

注釈

同じデータ ソースに対して複数BindingManagerBaseのインスタンスを作成する場合は、新BindingContextしいインスタンスを作成し、クラスから継承するオブジェクトのプロパティにControl設定BindingContextします。 たとえば、(2 つの異なるBindingContextオブジェクトから) 2 つのBindingManagerBaseオブジェクトがある場合は、それぞれのBindingManagerBaseプロパティをPosition異なる値に設定できます。 これにより、データ バインド コントロールの各セットに、同じデータ ソースの異なる値が表示されます。

適用対象

こちらもご覧ください