En artículos anteriores hemos visto como podemos implementar WCF R.I.A Services en Silverlight 4. Ahora vamos a ir más allá para poder ver una parte del abanico de posibilidades que nos puede ofrecer este modelo.
Lo primero de todo es situarnos.Tenemos un proyecto que toma como fuente de datos, la archiconocida base de datos Northwind. Las distintas tablas sobre las que vamos a trabajar (en concreto Orders, Employes y Customers) están relacionadas entre sí. Los datos de la tabla Orders son presentados en la interfaz de usuario a través del control DataGrid. El objetivo que perseguimos es poder ordenar estos datos y a la vez agruparlos según los criterios que consideremos relevantes.
Queremos realizar una organización de los datos del DataGrid. Para ello vamos a ordenarlos por el campo ShipCity y agruparlos por el campo ShipCountry.
Accedemos a el esquema de Home.xaml (debido a que es la página con la que trabajamos por defecto) para seleccionar el objeto ordersDomainDataSource. En la propiedad SortDescriptors, hacemos clic sobre el botón que esta anexo al título de la propiedad para editar los elementos de la colección.Cómo podemos observar a continuación:
En el editor de la colección de elementos añadimos un nuevo SortDescriptor. En el campo PropertyPath introducimos el valor del campo (ShipCity) por el cual van a ser ordenados los diferentes datos.
Ejecutamos la aplicación y podemos observar como los datos son ordenados por el campo deseado.
El siguiente paso es aplicar a los datos ordenados por el campo ShipCity, una agrupación por el campo ShipCountry. Para ello teniendo seleccionado el mismo objeto sobre el que hemos realizado la ordenación de datos, vamos a acceder a la propiedadad GroupDescriptor. Al hacer clic sobre el botón anexo al título de la propiedad, surgirá una nueva ventana emergente en la que debemos añadir un nuevo GroupDescriptor. En la propiedad PropertyPath el valor que tomará para realizar el agrupamiento será ShipCountry.
Ejecutamos el proyecto y vemos como además de estar ordenado esta agrupado por los campos que hemos decidido a lo largo de este apartado.
gracias amigo me ayudo bastante, ahora como hago para que la agrupacion se presente por defecto de forma colapsada… claro esta haciendolo en xaml..
saludos desd ecuador…