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?

¿Fue útil?

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.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top