Enlazar controles de Silverlight a datos en Visual Studio
Para crear controles enlazados a datos, puede arrastrar elementos desde la ventana Orígenes de datos hasta Silverlight Designer.
Para obtener información general sobre el modo de crear controles enlazados a datos en Visual Studio, vea Enlazar controles a los datos en Visual Studio. Para obtener más información sobre el enlace de datos con Silverlight, vea Data Binding.
Código y XAML generado
Al arrastrar un elemento desde la ventana Orígenes de datos hasta Silverlight designer, Visual Studio genera XAML que define un nuevo control enlazado a datos (o enlaza un control existente al origen de datos).
Al arrastrar elementos desde la ventana Orígenes de datos hasta el diseñador, Visual Studio genera código XAML que realiza lo siguiente:
Agrega un nuevo CollectionViewSource a los recursos de las páginas que se puede utilizar para navegar y enlazar a datos.
Si coloca el elemento en un área vacía de la cuadrícula, se crea un nuevo control que está enlazado a datos con ese elemento.
Si coloca el elemento en un control existente, ese control se configura como enlazado a datos con ese elemento.
Visual Studio también realiza los cambios siguientes en el archivo de código subyacente:
Crea un controlador de eventos Loaded() e incluye el siguiente comentario de aplicación auxiliar. Quite los comentarios del código y reemplace 'Resource Key for CollectionViewSource' por el nombre de CollectionViewSource generado. También reemplace ''your data' por un puntero a la colección de los objetos comerciales personalizados. Para obtener un ejemplo en el que se muestra la forma de modificar este comentario, vea Tutorial: Enlazar los controles de Silverlight a objetos.
// Do not load your data at design time. // if (!System.ComponentModel.DesignerProperties.GetIsInDesignMode(this)) // { // //Load your data here and assign the result to the CollectionViewSource. // System.Windows.Data.CollectionViewSource myCollectionViewSource = (System.Windows.Data.CollectionViewSource)this.Resources["Resource Key for CollectionViewSource"]; // myCollectionViewSource.Source = your data // }
'Do not load your data at design time. 'If Not (System.ComponentModel.DesignerProperties.GetIsInDesignMode(Me)) Then ' 'Load your data here and assign the result to the CollectionViewSource. ' Dim myCollectionViewSource As System.Windows.Data.CollectionViewSource = CType(Me.Resources("Resource Key for CollectionViewSource"), System.Windows.Data.CollectionViewSource) ' myCollectionViewSource.Source = your data 'End If
Servicios
Cuando se arrastra un objeto o una propiedad de servicio desde la ventana Orígenes de datos hasta el diseñador, Visual Studio genera código XAML que crea un control enlazado a datos (o enlaza un control existente al objeto o la propiedad). Sin embargo, Visual Studio no genera código que llene de datos el objeto de servicio del proxy. Este código se debe escribir expresamente. Para obtener un ejemplo de cómo hacerlo, vea Tutorial: Enlazar controles de Silverlight a un servicio de datos de WCF.
Objetos
Cuando se arrastra un objeto o una propiedad desde la ventana Orígenes de datos hasta el diseñador, Visual Studio genera código XAML que crea un control enlazado a datos (o enlaza un control existente al objeto o la propiedad). Sin embargo, Visual Studio no genera el código que llena de datos el objeto. Este código lo debe escribir el usuario. Para obtener un ejemplo en el que se muestra cómo hacerlo, vea Tutorial: Enlazar los controles de Silverlight a objetos.
Temas relacionados
En la siguiente tabla se enumeran los temas en los que se muestra cómo crear controles enlazados a datos en aplicaciones Silverlight arrastrando los elementos de la ventana Orígenes de datos.
Tarea |
Más información |
---|---|
Crear controles enlazados a datos que devuelve un servicio. |
Tutorial: Enlazar controles de Silverlight a un servicio de datos de WCF |
Crear controles enlazados a datos en objetos. |