ControlBindingsCollection.Add 方法

定义

Binding 添加到集合。

重载

Add(Binding)

将指定的 Binding 添加到集合。

Add(String, Object, String)

使用指定的控件属性名、数据源和数据成员创建 Binding,并将其添加到集合中。

Add(String, Object, String, Boolean)

用指定的控件属性名称、数据源、数据成员以及有关格式设置是否启用的信息创建绑定,并将该绑定添加到集合中。

Add(String, Object, String, Boolean, DataSourceUpdateMode)

创建将指定控件属性绑定到指定数据源的指定数据成员的绑定,同时可选地启用格式设置,根据指定的更新设置将值传播到数据源,并将该绑定添加到集合。

Add(String, Object, String, Boolean, DataSourceUpdateMode, Object)

创建将指定控件属性绑定到指定数据源的指定数据成员的绑定,同时可选地启用格式设置,根据指定的更新设置将值传播到数据源,当从数据源返回 DBNull 时将该属性设置为指定的值,并将该绑定添加到集合。

Add(String, Object, String, Boolean, DataSourceUpdateMode, Object, String)

创建将指定控件属性绑定到指定数据源的指定数据成员的绑定,同时可选地以指定的格式字符串启用格式设置、根据指定的更新设置将值传播到数据源、当从数据源返回 DBNull 时将该属性设置为指定的值,并将该绑定添加到集合。

Add(String, Object, String, Boolean, DataSourceUpdateMode, Object, String, IFormatProvider)

创建将指定控件属性绑定到指定数据源的指定数据成员的绑定,同时可选地以指定的格式字符串启用格式设置、根据指定的更新设置将值传播到数据源、当从数据源返回 DBNull 时将该属性设置为指定的值、设置指定的格式提供程序,并将该绑定添加到集合。

Add(Binding)

将指定的 Binding 添加到集合。

public:
 void Add(System::Windows::Forms::Binding ^ binding);
public void Add (System.Windows.Forms.Binding binding);
override this.Add : System.Windows.Forms.Binding -> unit
Public Sub Add (binding As Binding)

参数

binding
Binding

要添加的 Binding

例外

binding 为 null。

控件属性已绑定到数据。

- 或 -

Binding 未指定 DataSource 的有效列。

示例

下面的代码示例创建 一个 Binding 实例,并使用 Add 方法将该实例添加到 控件的 中ControlBindingsCollectionTextBox

protected:
   void BindControls()
   {
      /* Create a new Binding using the DataSet and a 
         navigation path(TableName.RelationName.ColumnName).
         Add event delegates for the Parse and Format events to 
         the Binding object, and add the object to the third 
         TextBox control's BindingsCollection. The delegates 
         must be added before adding the Binding to the 
         collection; otherwise, no formatting occurs until 
         the Current object of the BindingManagerBase for 
         the data source changes. */
      Binding^ b = gcnew Binding(
         "Text",ds,"customers.custToOrders.OrderAmount" );
      b->Parse += gcnew ConvertEventHandler(
         this, &Form1::CurrencyStringToDecimal );
      b->Format += gcnew ConvertEventHandler(
         this, &Form1::DecimalToCurrencyString );
      textBox1->DataBindings->Add( b );
   }
protected void BindControls()
{
   /* Create a new Binding using the DataSet and a 
   navigation path(TableName.RelationName.ColumnName).
   Add event delegates for the Parse and Format events to 
   the Binding object, and add the object to the third 
   TextBox control's BindingsCollection. The delegates 
   must be added before adding the Binding to the 
   collection; otherwise, no formatting occurs until 
   the Current object of the BindingManagerBase for 
   the data source changes. */
   Binding b = new Binding
   ("Text", ds, "customers.custToOrders.OrderAmount");
   b.Parse+=new ConvertEventHandler(CurrencyStringToDecimal);
   b.Format+=new ConvertEventHandler(DecimalToCurrencyString);
   textBox1.DataBindings.Add(b);
}
Protected Sub BindControls()
    ' Create a new Binding using the DataSet and a 
    ' navigation path(TableName.RelationName.ColumnName).
    ' Add event delegates for the Parse and Format events to 
    ' the Binding object, and add the object to the third 
    ' TextBox control's BindingsCollection. The delegates 
    ' must be added before adding the Binding to the 
    ' collection; otherwise, no formatting occurs until 
    ' the Current object of the BindingManagerBase for 
    ' the data source changes. 
    Dim b As New Binding("Text", ds, "customers.custToOrders.OrderAmount")
    AddHandler b.Parse, AddressOf CurrencyStringToDecimal
    AddHandler b.Format, AddressOf DecimalToCurrencyString
    textBox1.DataBindings.Add(b)
End Sub

注解

方法 DataSourceUpdateModeBinding 此重载创建的 的 Add 属性设置为 属性的值 DefaultDataSourceUpdateMode

更改 CollectionChanged 完成时发生 该事件。

适用于

Add(String, Object, String)

使用指定的控件属性名、数据源和数据成员创建 Binding,并将其添加到集合中。

public:
 System::Windows::Forms::Binding ^ Add(System::String ^ propertyName, System::Object ^ dataSource, System::String ^ dataMember);
public System.Windows.Forms.Binding Add (string propertyName, object dataSource, string dataMember);
public System.Windows.Forms.Binding Add (string propertyName, object dataSource, string? dataMember);
override this.Add : string * obj * string -> System.Windows.Forms.Binding
Public Function Add (propertyName As String, dataSource As Object, dataMember As String) As Binding

参数

propertyName
String

要绑定的控件属性的名称。

dataSource
Object

一个表示数据源的 Object

dataMember
String

要绑定到的属性或列表。

返回

新创建的 Binding

例外

bindingnull

propertyName 已绑定到数据。

- 或 -

dataMember 未指定 dataSource 的有效成员。

示例

下面的代码示例使用 Add 方法将三BindingTextBox 对象添加到 ControlBindingsCollection 控件的 中。 通过 ControlBindingsCollection 类的 DataBindings 属性来访问 Control

private:
   void BindTextBoxProperties()
   {
      // Clear the collection before adding new Binding objects.
      textBox1->DataBindings->Clear();

      // Create a DataTable containing Color objects.
      DataTable^ t = MakeTable();

      /* Bind the Text, BackColor, and ForeColor properties
         to columns in the DataTable. */
      textBox1->DataBindings->Add( "Text", t, "Text" );
      textBox1->DataBindings->Add( "BackColor", t, "BackColor" );
      textBox1->DataBindings->Add( "ForeColor", t, "ForeColor" );
   }

   DataTable^ MakeTable()
   {
      /* Create a DataTable with three columns.
         Two of the columns contain Color objects. */
      DataTable^ t = gcnew DataTable( "Control" );
      t->Columns->Add( "BackColor", Color::typeid );
      t->Columns->Add( "ForeColor", Color::typeid );
      t->Columns->Add( "Text" );

      // Add three rows to the table.
      DataRow^ r;
      r = t->NewRow();
      r[ "BackColor" ] = Color::Blue;
      r[ "ForeColor" ] = Color::Yellow;
      r[ "Text" ] = "Yellow on Blue";
      t->Rows->Add( r );
      r = t->NewRow();
      r[ "BackColor" ] = Color::White;
      r[ "ForeColor" ] = Color::Green;
      r[ "Text" ] = "Green on white";
      t->Rows->Add( r );
      r = t->NewRow();
      r[ "BackColor" ] = Color::Orange;
      r[ "ForeColor" ] = Color::Black;
      r[ "Text" ] = "Black on Orange";
      t->Rows->Add( r );
      return t;
   }
private void BindTextBoxProperties()
{
   // Clear the collection before adding new Binding objects.
   textBox1.DataBindings.Clear();

   // Create a DataTable containing Color objects.
   DataTable t = MakeTable();

   /* Bind the Text, BackColor, and ForeColor properties
   to columns in the DataTable. */
   textBox1.DataBindings.Add("Text", t, "Text");
   textBox1.DataBindings.Add("BackColor", t, "BackColor");
   textBox1.DataBindings.Add("ForeColor", t, "ForeColor");
}

private DataTable MakeTable()
{
   /* Create a DataTable with three columns.
   Two of the columns contain Color objects. */

   DataTable t = new DataTable("Control");
   t.Columns.Add("BackColor", typeof(Color));
   t.Columns.Add("ForeColor", typeof(Color));
   t.Columns.Add("Text");

   // Add three rows to the table.
   DataRow r;

   r = t.NewRow();
   r["BackColor"] = Color.Blue;
   r["ForeColor"] = Color.Yellow;
   r["Text"] = "Yellow on Blue";
   t.Rows.Add(r);

   r = t.NewRow();
   r["BackColor"] = Color.White;
   r["ForeColor"] = Color.Green;
   r["Text"] = "Green on white";
   t.Rows.Add(r);

   r = t.NewRow();
   r["BackColor"] = Color.Orange;
   r["ForeColor"] = Color.Black;
   r["Text"] = "Black on Orange";
   t.Rows.Add(r);

   return t;
}
Private Sub BindTextBoxProperties()
    ' Clear the collection before adding new Binding objects.
    textBox1.DataBindings.Clear()
    
    ' Create a DataTable containing Color objects.
    Dim t As DataTable = MakeTable()
    
    ' Bind the Text, BackColor, and ForeColor properties
    ' to columns in the DataTable. 
    textBox1.DataBindings.Add("Text", t, "Text")
    textBox1.DataBindings.Add("BackColor", t, "BackColor")
    textBox1.DataBindings.Add("ForeColor", t, "ForeColor")
End Sub    

Private Function MakeTable() As DataTable
    ' Create a DataTable with three columns.
    ' Two of the columns contain Color objects. 
    
    Dim t As New DataTable("Control")
    t.Columns.Add("BackColor", GetType(Color))
    t.Columns.Add("ForeColor", GetType(Color))
    t.Columns.Add("Text")
    
    ' Add three rows to the table.
    Dim r As DataRow
    
    r = t.NewRow()
    r("BackColor") = Color.Blue
    r("ForeColor") = Color.Yellow
    r("Text") = "Yellow on Blue"
    t.Rows.Add(r)
    
    r = t.NewRow()
    r("BackColor") = Color.White
    r("ForeColor") = Color.Green
    r("Text") = "Green on white"
    t.Rows.Add(r)
    
    r = t.NewRow()
    r("BackColor") = Color.Orange
    r("ForeColor") = Color.Black
    r("Text") = "Black on Orange"
    t.Rows.Add(r)
    
    Return t
End Function

注解

方法 DataSourceUpdateModeBinding 此重载创建的 的 Add 属性设置为 属性的值 DefaultDataSourceUpdateMode

添加 会导致BindingCollectionChanged事件发生。

适用于

Add(String, Object, String, Boolean)

用指定的控件属性名称、数据源、数据成员以及有关格式设置是否启用的信息创建绑定,并将该绑定添加到集合中。

public:
 System::Windows::Forms::Binding ^ Add(System::String ^ propertyName, System::Object ^ dataSource, System::String ^ dataMember, bool formattingEnabled);
public System.Windows.Forms.Binding Add (string propertyName, object dataSource, string dataMember, bool formattingEnabled);
public System.Windows.Forms.Binding Add (string propertyName, object dataSource, string? dataMember, bool formattingEnabled);
override this.Add : string * obj * string * bool -> System.Windows.Forms.Binding
Public Function Add (propertyName As String, dataSource As Object, dataMember As String, formattingEnabled As Boolean) As Binding

参数

propertyName
String

要绑定的控件属性的名称。

dataSource
Object

表示数据源的 Object

dataMember
String

要绑定到的属性或列表。

formattingEnabled
Boolean

若要格式化显示的数据,则为 true;否则为 false

返回

新创建的 Binding

例外

在该控件中不存在由 propertyName 给出的属性。

- 或 -

给定的属性为只读属性。

如果禁用格式设置,且 propertyName 既不是有效的控件属性,也不是空字符串 ("")。

适用于

Add(String, Object, String, Boolean, DataSourceUpdateMode)

创建将指定控件属性绑定到指定数据源的指定数据成员的绑定,同时可选地启用格式设置,根据指定的更新设置将值传播到数据源,并将该绑定添加到集合。

public:
 System::Windows::Forms::Binding ^ Add(System::String ^ propertyName, System::Object ^ dataSource, System::String ^ dataMember, bool formattingEnabled, System::Windows::Forms::DataSourceUpdateMode updateMode);
public System.Windows.Forms.Binding Add (string propertyName, object dataSource, string dataMember, bool formattingEnabled, System.Windows.Forms.DataSourceUpdateMode updateMode);
public System.Windows.Forms.Binding Add (string propertyName, object dataSource, string? dataMember, bool formattingEnabled, System.Windows.Forms.DataSourceUpdateMode updateMode);
override this.Add : string * obj * string * bool * System.Windows.Forms.DataSourceUpdateMode -> System.Windows.Forms.Binding
Public Function Add (propertyName As String, dataSource As Object, dataMember As String, formattingEnabled As Boolean, updateMode As DataSourceUpdateMode) As Binding

参数

propertyName
String

要绑定的控件属性的名称。

dataSource
Object

表示数据源的 Object

dataMember
String

要绑定到的属性或列表。

formattingEnabled
Boolean

若要格式化显示的数据,则为 true;否则为 false

updateMode
DataSourceUpdateMode

DataSourceUpdateMode 值之一。

返回

新创建的 Binding

例外

propertyName 给出的属性在该控件上不存在或者为只读。

- 或 -

数据源中不存在指定的数据成员。

- 或 -

指定的数据源、数据成员或控件属性与集合中的另一个绑定相关联。

注解

Add调用 方法将CollectionChanged引发 事件。

适用于

Add(String, Object, String, Boolean, DataSourceUpdateMode, Object)

创建将指定控件属性绑定到指定数据源的指定数据成员的绑定,同时可选地启用格式设置,根据指定的更新设置将值传播到数据源,当从数据源返回 DBNull 时将该属性设置为指定的值,并将该绑定添加到集合。

public:
 System::Windows::Forms::Binding ^ Add(System::String ^ propertyName, System::Object ^ dataSource, System::String ^ dataMember, bool formattingEnabled, System::Windows::Forms::DataSourceUpdateMode updateMode, System::Object ^ nullValue);
public System.Windows.Forms.Binding Add (string propertyName, object dataSource, string dataMember, bool formattingEnabled, System.Windows.Forms.DataSourceUpdateMode updateMode, object nullValue);
public System.Windows.Forms.Binding Add (string propertyName, object dataSource, string? dataMember, bool formattingEnabled, System.Windows.Forms.DataSourceUpdateMode updateMode, object? nullValue);
override this.Add : string * obj * string * bool * System.Windows.Forms.DataSourceUpdateMode * obj -> System.Windows.Forms.Binding
Public Function Add (propertyName As String, dataSource As Object, dataMember As String, formattingEnabled As Boolean, updateMode As DataSourceUpdateMode, nullValue As Object) As Binding

参数

propertyName
String

要绑定的控件属性的名称。

dataSource
Object

表示数据源的 Object

dataMember
String

要绑定到的属性或列表。

formattingEnabled
Boolean

若要格式化显示的数据,则为 true;否则为 false

updateMode
DataSourceUpdateMode

DataSourceUpdateMode 值之一。

nullValue
Object

如果数据具有此值,则绑定属性设置为 DBNull

返回

新创建的 Binding

例外

propertyName 给出的属性在该控件上不存在或者为只读。

- 或 -

数据源中不存在指定的数据成员。

- 或 -

指定的数据源、数据成员或控件属性与集合中的另一个绑定相关联。

注解

Add调用 方法将CollectionChanged引发 事件。

适用于

Add(String, Object, String, Boolean, DataSourceUpdateMode, Object, String)

创建将指定控件属性绑定到指定数据源的指定数据成员的绑定,同时可选地以指定的格式字符串启用格式设置、根据指定的更新设置将值传播到数据源、当从数据源返回 DBNull 时将该属性设置为指定的值,并将该绑定添加到集合。

public:
 System::Windows::Forms::Binding ^ Add(System::String ^ propertyName, System::Object ^ dataSource, System::String ^ dataMember, bool formattingEnabled, System::Windows::Forms::DataSourceUpdateMode updateMode, System::Object ^ nullValue, System::String ^ formatString);
public System.Windows.Forms.Binding Add (string propertyName, object dataSource, string dataMember, bool formattingEnabled, System.Windows.Forms.DataSourceUpdateMode updateMode, object nullValue, string formatString);
public System.Windows.Forms.Binding Add (string propertyName, object dataSource, string? dataMember, bool formattingEnabled, System.Windows.Forms.DataSourceUpdateMode updateMode, object? nullValue, string formatString);
override this.Add : string * obj * string * bool * System.Windows.Forms.DataSourceUpdateMode * obj * string -> System.Windows.Forms.Binding
Public Function Add (propertyName As String, dataSource As Object, dataMember As String, formattingEnabled As Boolean, updateMode As DataSourceUpdateMode, nullValue As Object, formatString As String) As Binding

参数

propertyName
String

要绑定的控件属性的名称。

dataSource
Object

表示数据源的 Object

dataMember
String

要绑定到的属性或列表。

formattingEnabled
Boolean

若要格式化显示的数据,则为 true;否则为 false

updateMode
DataSourceUpdateMode

DataSourceUpdateMode 值之一。

nullValue
Object

如果数据具有此值,则绑定属性设置为 DBNull

formatString
String

一个或多个格式说明符,指示如何显示值。

返回

新创建的 Binding

例外

propertyName 给出的属性在该控件上不存在或者为只读。

- 或 -

数据源中不存在指定的数据成员。

- 或 -

指定的数据源、数据成员或控件属性与集合中的另一个绑定相关联。

注解

Add调用 方法将CollectionChanged引发 事件。

适用于

Add(String, Object, String, Boolean, DataSourceUpdateMode, Object, String, IFormatProvider)

创建将指定控件属性绑定到指定数据源的指定数据成员的绑定,同时可选地以指定的格式字符串启用格式设置、根据指定的更新设置将值传播到数据源、当从数据源返回 DBNull 时将该属性设置为指定的值、设置指定的格式提供程序,并将该绑定添加到集合。

public:
 System::Windows::Forms::Binding ^ Add(System::String ^ propertyName, System::Object ^ dataSource, System::String ^ dataMember, bool formattingEnabled, System::Windows::Forms::DataSourceUpdateMode updateMode, System::Object ^ nullValue, System::String ^ formatString, IFormatProvider ^ formatInfo);
public System.Windows.Forms.Binding Add (string propertyName, object dataSource, string dataMember, bool formattingEnabled, System.Windows.Forms.DataSourceUpdateMode updateMode, object nullValue, string formatString, IFormatProvider formatInfo);
public System.Windows.Forms.Binding Add (string propertyName, object dataSource, string? dataMember, bool formattingEnabled, System.Windows.Forms.DataSourceUpdateMode updateMode, object? nullValue, string formatString, IFormatProvider? formatInfo);
override this.Add : string * obj * string * bool * System.Windows.Forms.DataSourceUpdateMode * obj * string * IFormatProvider -> System.Windows.Forms.Binding
Public Function Add (propertyName As String, dataSource As Object, dataMember As String, formattingEnabled As Boolean, updateMode As DataSourceUpdateMode, nullValue As Object, formatString As String, formatInfo As IFormatProvider) As Binding

参数

propertyName
String

要绑定的控件属性的名称。

dataSource
Object

表示数据源的 Object

dataMember
String

要绑定到的属性或列表。

formattingEnabled
Boolean

若要格式化显示的数据,则为 true;否则为 false

updateMode
DataSourceUpdateMode

DataSourceUpdateMode 值之一。

nullValue
Object

如果数据具有此值,则绑定属性设置为 DBNull

formatString
String

一个或多个格式说明符,指示如何显示值。

formatInfo
IFormatProvider

重写默认格式设置行为的 IFormatProvider 的实现。

返回

新创建的 Binding

例外

propertyName 给出的属性在该控件上不存在或者为只读。

- 或 -

数据源中不存在指定的数据成员。

- 或 -

指定的数据源、数据成员或控件属性与集合中的另一个绑定相关联。

注解

Add调用 方法将CollectionChanged引发 事件。

适用于