BindingsCollection (Clase)
Actualización: noviembre 2007
Representa una colección de objetos Binding de un control.
Ensamblado: System.Windows.Forms (en System.Windows.Forms.dll)
Un enlace de datos simple se consigue agregando objetos Binding a BindingsCollection. Cualquier objeto que hereda de la clase Control puede tener acceso a BindingsCollection mediante la propiedad DataBindings. Para obtener una lista de los controles de Windows que admiten enlaces de datos, vea la clase Binding.
En el siguiente ejemplo, se enlaza la propiedad Text de un control TextBox a un campo de una base de datos.
private void BindTextBoxControl() { DataSet myDataSet = new DataSet(); /* Insert code to populate the DataSet with tables, columns, and data. */ // Creates a new Binding object. Binding myBinding = new Binding ("Text", myDataSet, "customers.custToOrders.OrderAmount"); // Adds event delegates for the Parse and Format events. myBinding.Parse += new ConvertEventHandler(CurrencyToDecimal); myBinding.Format += new ConvertEventHandler(DecimalToCurrency); // Adds the new Binding to the BindingsCollection. text1.DataBindings.Add(myBinding); } private void DecimalToCurrency(object sender, ConvertEventArgs cevent) { /* This method is the Format event handler. Whenever the control displays a new value, the value is converted from its native Decimal type to a string. The ToString method then formats the value as a Currency, by using the formatting character "c". */ cevent.Value = ((decimal) cevent.Value).ToString("c"); } private void CurrencyToDecimal(object sender, ConvertEventArgs cevent) { /* This method is the Parse event handler. The Parse event occurs whenever the displayed value changes. The static Parse method of the Decimal structure converts the string back to its native Decimal type. */ cevent.Value = Decimal.Parse(cevent.Value.ToString(), NumberStyles.Currency, null); }
private void BindTextBoxControl()
{
DataSet myDataSet = new DataSet();
/* Insert code to populate the DataSet with tables,
columns, and data.
*/
// Creates a new Binding object.
Binding myBinding = new Binding("Text", myDataSet,
"customers.custToOrders.OrderAmount");
// Adds event delegates for the Parse and Format events.
myBinding.add_Parse(new ConvertEventHandler(CurrencyToDecimal));
myBinding.add_Format(new ConvertEventHandler(DecimalToCurrency));
// Adds the new Binding to the BindingsCollection.
text1.get_DataBindings().Add(myBinding);
} //BindTextBoxControl
private void DecimalToCurrency(Object sender, ConvertEventArgs cevent)
{
/* This method is the Format event handler. Whenever the
control displays a new value, the value is converted from
its native Decimal type to a string. The ToString method
then formats the value as a Currency, by using the
formatting character "c".
*/
cevent.set_Value(((System.Decimal)(cevent.get_Value())).ToString("c"));
} //DecimalToCurrency
private void CurrencyToDecimal(Object sender, ConvertEventArgs cevent)
{
/* This method is the Parse event handler. The Parse event
occurs whenever the displayed value changes. The static
Parse method of the Decimal structure converts the
string back to its native Decimal type.
*/
cevent.set_Value(Decimal.Parse(cevent.get_Value().ToString(),
NumberStyles.Currency, null));
} //CurrencyToDecimal
System.MarshalByRefObject
System.Windows.Forms.BaseCollection
System.Windows.Forms.BindingsCollection
System.Windows.Forms.ControlBindingsCollection
Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile para Smartphone, Windows Mobile para Pocket PC
.NET Framework y .NET Compact Framework no admiten todas las versiones de cada plataforma. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.