Tengo muchos elementos dentro de un control de lista. Quiero que cada elemento tenga una plantilla de artículo diferente según el tipo de artículo. Por lo tanto, el primer elemento de la lista es un tipo ObjectA y, por lo tanto, quiero que se represente con ItemTemplateA. El segundo elemento es de tipo ObjectB y, por lo tanto, quiero que tenga ItemTemplateB para renderizar. Por el momento, solo puedo usar la configuración de ItemTemplate para definir una plantilla para todos ellos. Cualquier forma de lograr esto?¿Plantilla de artículo diferente para cada artículo en una lista de WPF?
Respuesta
la ItemTemplateSelector
funciona, pero creo que es más fácil crear múltiples DataTemplate
s en su sección de recursos y luego simplemente dándole a cada uno un DataType
. Esto automáticamente usará este DataTemplate
si el generador de elementos detecta el tipo de datos coincidente?
<DataTemplate DataType={x:Type local:ObjectA}>
...
</DataTemplate>
También asegúrese de que usted no tiene ninguna x:Key
conjunto para el DataTemplate
.
Más información sobre este enfoque here
Eche un vistazo a la propiedad ItemTemplateSelector del control de su lista. Puede dirigirlo a un TemplateSelector personalizado y decidir qué plantilla usar en el código.
Aquí hay un post TemplateSelectors que describen:
http://blogs.interknowlogy.com/johnbowen/archive/2007/06/21/20463.aspx
Editar: Aquí está un puesto mejor:
http://blog.paranoidferret.com/index.php/2008/07/16/wpf-tutorial-how-to-use-a-datatemplateselector/
Parece justo lo que necesito. Gracias. –
- 1. ¿Número para cada artículo enumerado?
- 2. Cómo obtener cada otro artículo en una lista
- 3. Múltiples colores para cada artículo en JComboBox
- 4. Actualizar lista de Sharepoint artículo
- 5. conseguir un artículo en una lista
- 6. Actualización de la lista WPF cuando el artículo cambia
- 7. XmlSerializer.Deserialize en una lista <> artículo
- 8. Artículo expandible en la lista en Android
- 9. de Sitecore "reciente" Artículo
- 10. LINQ Siguiente artículo en la lista
- 11. ¿Cómo redondear cada artículo en una lista de carrozas a 2 decimales?
- 12. conteo de frecuencia artículo
- 13. eliminar los espacios en blanco de cada matriz rieles artículo
- 14. operador módulo para funcionar primero y luego cada 3 artículo
- 15. WinRT XAML Buscar control dentro de FlipView Plantilla de artículo
- 16. Buscar el próximo artículo más bajo en una lista ordenada
- 17. Ordenar una lista de tuplas por segundo artículo (valor entero)
- 18. Pinging Google sitemap después de cada nueva presentación de artículo?
- 19. Cómo eliminar un artículo de una lista genérica
- 20. ¿Cómo puedo obtener cada enésimo artículo de una lista <T>?
- 21. Verificar si el artículo está en una lista (Lisp)
- 22. Convertir tupla en una lista del primer artículo
- 23. ¿Cómo obtener la posición del artículo en una lista?
- 24. ¿Cómo reemplazar un artículo dado en una lista?
- 25. enlace artículo de trabajo tfs a proyecto diferente
- 26. añadir el artículo en filas separadas en vista de lista
- 27. ¿Encontrar un artículo en la lista de LINQ?
- 28. Comprobación del artículo en la Lista genérica antes de usarlo
- 29. Joomla: Cómo cambiar la plantilla en un artículo específico
- 30. Resumiendo un artículo de Wikipedia
Este enfoque no funciona de manera desafortunada. –
Olvidé poner el {x: tipo ... cosas, por favor intente de nuevo! – rudigrobler
También asegúrese de no tener x: ¡Juego de llaves! – rudigrobler