Estoy buscando un método confiable para construir una lista de controles de < Tipo> contenido en un panel < específico> control derivado - esto incluye aquellos que son hijos directos, y aquellos que son hijos de niños, etc.Silverlight: Encuentre todos los controles de tipo en diseño
La manera más obvia era que sólo lo hacen de forma recursiva:
añadir a la lista de hijos de este control < tipo>, a continuación, repita la función para cualquier niño de este control que es una < Panel> o descendiente.
Sin embargo, me preocupa que no encuentre todos los controles en el árbol; ContentControl también podría contener un control de < Tipo>, al igual que HeaderedContentControl o cualquier otro control similar con uno o más atributos secundarios/de contenido .
¿Hay algún medio de ejecutar una búsqueda contra el árbol de diseño real, de modo que cualquier instancia de de un tipo específico de control contenido sin un elemento primario específico se pueda encontrar?
Sí, funciona muy bien. Gracias. – Jonx
@AnthonyWJones cuando uso Descendents no se retrotará ningún control para mí, soy trace y VisualTreeHelper.GetChildrenCount (root) devolverá 0 count, ¿por qué? –