Pregunta

Tengo que escribir un control que se supone que debe tener sólo un determinado tipo de controles secundarios. Funcionalmente funciona como un selector en el que puedo seleccionar / activar el de sus niño pero parece que no puedo derivar de selector porque ItemsControl puede tomar cualquier tipo de niño (objeto). Realmente me gustaría tener tiempo de compilación typesafety aquí. Así lanzar una excepción cuando un niño de se añade el tipo incorrecto no es una opción.

Esta restricción parece ser necesario porque el control de los padres tiene que depender de ciertas propiedades y behavoir en sus hijos. También hay algo de la comunicación directa de los niños con sus padres.

¿Cómo es algo como esto por lo general se maneja en WPF.

¿Fue útil?

Solución

ItemsControl es envolver a sus hijos en un tipo de contenedor artículo de su opción. Por lo tanto, usted sabe que los niños de su ItemsControl serán siempre de ese tipo. Por ejemplo, ListBoxes siempre tienen ListBoxItems como los niños.

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