En WPF, CollectionViewSource permite clasificar (SortDescriptions) y agrupar (GroupDescriptions). Sin embargo, no puedo encontrar una manera de ordenar los grupos. ¿Es posible?Cómo puedo solicitar grupos en WPF
Respuesta
<CollectionViewSource x:Key="cvs" Source="{Binding Source={StaticResource animals}, Path=AnimalList}">
<CollectionViewSource.GroupDescriptions>
<PropertyGroupDescription PropertyName="Category"/>
</CollectionViewSource.GroupDescriptions>
<CollectionViewSource.SortDescriptions>
<scm:SortDescription PropertyName="Category" />
<scm:SortDescription PropertyName="Name" />
</CollectionViewSource.SortDescriptions>
</CollectionViewSource>
Sólo tiene que añadir dos SortDescriptions.Adding dos descripciones ordenar nos permite clasificar los grupos primero y luego los elementos dentro de los grupos.
Para más cheque aquí
La clasificación de grupos es posible, aunque no es tan sencilla. Lo explicaré en el ejemplo.
class CollectionElement
{
public string Name {get; set; }
public string Group {get; set; }
}
Si desea elementos del grupo y ordenar los grupos alfabéticamente a continuación, ordenar los elementos dentro de cada grupo alfabéticamente a continuación, debe hacer lo siguiente:
- Añadir PropertyGroupDescription referencia
Group
propiedad - Añadir SortDescription referencia
Group
- Agregar SortDescription referencia
Name
El proceso de agrupación parece funcionar efectivamente de la siguiente manera: Iterar a través de elementos ya clasificados consecuentemente. Al encontrar elementos de un grupo desconocido, cree un grupo y agréguelo a la lista de grupos. Al encontrar un elemento del grupo existente, agréguelo al grupo existente. (La implementación real puede ser diferente). Entonces, si sus elementos están ordenados en el orden en que desea que aparezcan sus grupos, efectivamente clasificará los grupos.
- 1. Grupos WPF RadioButton en Xaml
- 2. ¿Cómo puedo solicitar campos en Django ModelForm?
- 3. ¿Cómo puedo solicitar entradas en un UNION sin ORDER BY?
- 4. Solicitar autenticación de ADFS
- 5. Cómo solicitar Pruebas NUnit
- 6. ¿Puedo solicitar un iostream si es grabable?
- 7. ¿Cómo puedo encontrar grupos de registros que coincidan con otros grupos de registros (división relacional?)
- 8. Cómo crear un DialogBox para solicitar al usuario la opción Sí/No en WPF
- 9. WPF Listview Groups Encabezados de Grupos No Mostrando: ¿Alguna idea?
- 10. Cómo solicitar por segunda vez
- 11. ¿Cómo puedo usar RelayCommand en wpf?
- 12. Cómo puedo obtener Fuentes disponibles en WPF
- 13. ¿Cómo puedo obtener el DPI en WPF?
- 14. ¿Cómo iterar grupos con nombre en xpressive?
- 15. ¿Cómo puedo hacer que los Grupos en un Metro GridView usen diferentes Diseños?
- 16. Solicitar agente de uso en Mojolicious
- 17. grupos ConCat en SQL Server
- 18. ¿Cómo solicitar una cadena de consulta completa en Spring MVC?
- 19. Grupos fijados en ExpandableListView
- 20. has_secure_password: cómo solicitar la longitud mínima
- 21. Cómo solicitar eventos vinculados con jQuery
- 22. ¿Cómo debo solicitar estos puntajes "útiles"?
- 23. ¿Cómo puedo hacer que esta llamada para solicitar en nodejs sea sincrónica?
- 24. ¿Cómo puedo hacer un estiramiento WPF Expander?
- 25. ¿Cómo puedo formatear condicionalmente un WPF TextBlock?
- 26. Constructor encadenamiento Solicitar
- 27. asp.net 3.5 ¿Solicitar variables?
- 28. WPF: Colección de enlace con colección en un ListBox con grupos
- 29. ¿Cómo puedo hacer clic en un control en WPF?
- 30. Afectando a Z Solicitar UIImageView
A pesar de que no hay dominio bea.stollnitz.com (ya): 'Mientras GroupDescriptions' puede contener cualquier clase que deriva de' GroupDescription' - tener que solo anula el método 'GroupNameFromItem' que traduce cualquier objeto de entrada a cualquier objeto de salida, el' SortDescriptions' solo admite STRUCT (!!!!!) 'SortDescription' que solo se dirige a nombres de propiedad. No hay forma de correlacionar esos 2 mundos, una estructura y una clase abstracta. – springy76
esto no funcionó para mí ... Estoy usando 'ICollectionView' en el código detrás (no xaml) – JobaDiniz