Expande WPF Expander para traer el elemento contenido a la vista
Pregunta
Tengo un expansor que tiene n elementos contenidos (posiblemente otros Expanders que también contienen elementos).
Ahora quiero poner un elemento contenido en la vista programáticamente, como con BringIntoView () para ScrollViewers. Todos los expansores que actualmente ocultan el elemento deberían expandirse.
Mi idea actual es crear una subclase del Expander y hacer que reaccione a un evento que brota del elemento contenido. Pero puede haber una forma mucho más fácil en WPF, ¿verdad?
Solución
Puede crear una propiedad adjunta para hacer eso en lugar de subclasificar la clase Expander existente. Este AP sería de tipo bool, y cuando se establece en Verdadero en un registro de expansión para el evento Expandido. En el controlador de eventos, puedes subir el árbol lógico para tomar el Expander principal y toogle es propiedad de IsExpanded.