2012-06-07 2 views
6

Non sono sicuro di essere sulla strada giusta con questo, ma in sostanza sto cercando di visualizzare un elenco raggruppato di elementi, in cui ogni elemento può essere un membro di più gruppi. cioè le due entità sono correlate su base molti-a-molti. Cercherò di spiegare ...Visualizzazione di raggruppamenti molti a molti in WPF


enter image description here


enter image description here


La mia domanda è, come faccio a raggruppare gli elementi di questo tipo in un controllo? Sono a conoscenza di ICollectionView e PropertyGroupDescription, ma questo non sembra essere il mio scopo qui (sembra funzionare solo in uno scenario uno-a-molti).

Qualche idea?

Alcuni punti da notare:

  1. Quando visualizzato in un elenco, voglio mostrare tutti i componenti del raggruppati per Kit.
  2. Quando seleziono un componente da questo elenco, desidero solo quella istanza particolare del componente (vale a dire I componente + il kit da cui l'ho selezionato).
  3. Ignorare il fatto che sto usando un TreeView per mostrare gli elementi sottostanti, poiché effettivamente userò un ListBox con un GroupStyle
  4. Sto usando il codice EF 4.3.1 e il modello MVVM di WPF .
+0

Lo screenshot mostra una vista ad albero - stai riscontrando un problema nel trasferire i dati nella visualizzazione ad albero? O nella tua lista raggruppata? Non sono chiaro su quale sia il vero problema - non sei sicuro di come creare un DataTemplate gerarchico? Il tuo punto # 2 allude a un problema specifico che ho visto prima - c'è un problema particolare che hai intorno alla selezione? –

+0

Penso che quello che sto chiedendo sia 2 diverse domande. In primo luogo, voglio estrarre tutti i componenti dal database (di cui potrebbero esserci più istanze dello stesso componente, ad es. Tank -> Glue and Gunship -> Glue), come una lista piatta. In secondo luogo, voglio visualizzarli in un ListBox, raggruppandoli per Kit. – mortware

risposta

4

Utilizzare il metodo Include() sull'oggetto di contesto per includere le entità correlate.

+1

Grazie, penso che risolva il problema di ottenere più istanze di Component, ma ho ancora bisogno di trovare un modo per raggrupparlo nell'interfaccia utente. – mortware