BindingContext コンストラクタ
BindingContext クラスの新しいインスタンスを初期化します。
Public Sub New()
[C#]
public BindingContext();
[C++]
public: BindingContext();
[JScript]
public function BindingContext();
解説
同じデータ ソースに対して複数の BindingManagerBase インスタンスが必要な場合は、新しい BindingContext を作成し、それを Control から継承されるオブジェクトの BindingContext プロパティに設定します。
たとえば、2 つの BindingManagerBase オブジェクトを 2 つの異なる BindingContext オブジェクトから取得している場合、それぞれの BindingManagerBase の Position プロパティに異なる値を設定して、各データ連結コントロールに同じデータ ソースからの異なる値を表示できます。
使用例
以下の例では、2 つの新しい BindingContext オブジェクトを作成し、それぞれのオブジェクトを GroupBox コントロールの BindingContext プロパティに割り当てています。 GroupBox1 には TextBox1 が格納され、 GroupBox2 には TextBox2 が格納されます。この処理には、 Control.ControlCollection の AddRange メソッドが使用されます。さらに、この例では、 Binding オブジェクトを 2 つの TextBox コントロールに追加し、各コントロールを同じデータ ソースおよび同じデータ メンバにバインドしています。また、 GroupBox コントロールで BindingContext を使用して、異なる BindingManagerBase オブジェクトの Position プロパティを設定する 2 つのイベント ハンドラも示しています。
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
[C#]
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;
}
[C++]
private:
void BindControls()
{
System::Windows::Forms::BindingContext* bcG1 = new System::Windows::Forms::BindingContext();
System::Windows::Forms::BindingContext* bcG2 = new System::Windows::Forms::BindingContext();
groupBox1->BindingContext = bcG1;
groupBox2->BindingContext = bcG2;
textBox1->DataBindings->Add(S"Text", ds, S"Customers.CustName");
textBox2->DataBindings->Add(S"Text", ds, S"Customers.CustName");
}
void Button1_Click(Object* /*sender*/, EventArgs* /*e*/)
{
groupBox1->BindingContext->get_Item(ds, S"Customers")->Position =
groupBox1->BindingContext->get_Item(ds, S"Customers")->Position + 1;
}
void Button2_Click(Object* /*sender*/, EventArgs* /*e*/)
{
groupBox2->BindingContext->get_Item(ds, S"Customers")->Position =
groupBox2->BindingContext->get_Item(ds, S"Customers")->Position + 1;
}
[JScript]
private function BindControls()
{
var bcG1 : System.Windows.Forms.BindingContext = new System.Windows.Forms.BindingContext;
var bcG2 : System.Windows.Forms.BindingContext = new System.Windows.Forms.BindingContext;
button1.BindingContext = bcG1;
button2.BindingContext = bcG2;
textBox1.DataBindings.Add(new Binding
("Text", ds, "customers.custName"));
textBox2.DataBindings.Add(new Binding
("Text", ds, "customers.custName"));
// Get the BindingManagerBase for the Customers table.
bmCustomers = this.BindingContext [ds, "Customers"];
}
private function Button1_Click(sender, e : EventArgs)
{
bmCustomers.Position += 1;
}
private function Button2_Click(sender, e : EventArgs)
{
bmCustomers.Position -= 1;
}
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET
参照
BindingContext クラス | BindingContext メンバ | System.Windows.Forms 名前空間 | BindingManagerBase