2012-05-08 14 views
6

La mia applicazione ha un ListView con GridLayout. Ora sto cercando di introdurre i gruppi ListView nella mia applicazione. Supponiamo che l'origine dati abbia di solito Gruppo1, Gruppo2 e Gruppo3. Vorrei visualizzare tutti i 3 gruppi tutte le volte, indipendentemente dal fatto che ci sia o meno un elemento. Quando non ci sono elementi in un gruppo, voglio visualizzare un messaggio "gruppo vuoto" sotto il titolo del gruppo.Come dare un "Messaggio ListView vuoto" quando non c'è alcuna fonte dati

Penso che il modo predefinito che gestisce WinRT non sia quello di visualizzare il gruppo vuoto e ha molto senso in molti scenari. Per fare questo, so che forse posso aggiungere un elemento fittizio alla vista elenco quando non ci sono dati, ma questo è un po 'hacky.

Quindi, c'è un modo migliore per farlo?

risposta

-1

Basta associare ListView a una raccolta di oggetti Group (dove Group è una classe definita dall'utente e Group1, Group2 e Group3 sono tali oggetti Group).

Oltre alle proprietà a livello di gruppo (come un titolo), un gruppo contiene una raccolta di oggetti oggetto.

Nel datatemplate di ListView, utilizzare un altro ListView per mostrare gli elementi Item per ciascun gruppo.

Attenzione però, l'annidamento di GridViews si tradurrà in ScrollViewer annidati. Si vorrebbe rimuovere ScrollViewer dalle GridView interne cambiando il proprio modello di controllo.

+1

Grazie per i suggerimenti, ma non vedo come sia meglio di aggiungere un elemento di visualizzazione elenco fittizio ... –

+0

Bene, perché non è necessario un elemento fittizio? Suppongo che un articolo fittizio richieda una logica piuttosto complessa per garantire che l'oggetto fittizio venga visualizzato nel modo desiderato e non reagisce a tocchi e clic e altri eventi come farebbe un oggetto reale. Questo approccio rimuove tutto ciò. –

Problemi correlati