Domanda

Ho bisogno di scrivere un controllo che si suppone di prendere solo un certo tipo di controlli figlio. Funzionalmente funziona come un selettore a che posso selezionare / attivare il bambino dei suoi, ma sembra che non posso derivare da selettore perché un ItemsControl può assumere qualsiasi tipo di bambino (oggetto). Mi piacerebbe davvero avere compiletime sicurezza rispetto ai tipi qui. Così un'eccezione quando un bambino del tipo sbagliato è aggiunto non è un'opzione.

Questo vincolo sembra essere necessario, perché il controllo genitore ha bisogno di contare su alcune proprietà e behavoir nei suoi figli. C'è anche qualche comunicazione diretta dei bambini con i suoi genitori.

Come è qualcosa di simile a questo di solito gestito in WPF.

È stato utile?

Soluzione

involucro di ItemsControl loro figli in un oggetto tipo di contenitore di vostra scelta. Così, si sa i figli del tuo ItemsControl saranno sempre di quel tipo. Ad esempio, ListBoxes hanno sempre ListBoxItems da bambini.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top