2014-12-16 13 views
6

Sto cercando di impaginare un ListView in un'app di Windows 8.1 in modo che i suoi elementi includano (al massimo) due colonne che leggono in ordine come un giornale e scorrono verticalmente, ad es. ,Come visualizzare gli elementi in due colonne in un ListView

1 4 
2 5 
3 

il più vicino che ho ottenuto è:

<ListView.ItemsPanel> 
    <ItemsPanelTemplate> 
     <WrapGrid Orientation="Horizontal" MaximumRowsOrColumns="2" /> 
    </ItemsPanelTemplate> 
</ListView.ItemsPanel> 

ma poiché MaximumRowsAndColumns viene interpretato secondo il Orientation, il risultato è

1 2 
3 4 
5 

commutare il Orientation al Vertical mi dà

1 2 3 
4 5 

Sto andando a bisogno di un pannello personalizzato per fare questo? Un'altra tattica è forse una gridview all'interno di un scrollviewer, ma a me sembra un po 'hacky.

+0

penso che sarebbe saggio per mantenere in questo modo se stesso, dal momento che se ad organizzare la articoli di giornale in base alle tue esigenze, significherebbe che un ultimo articolo potrebbe andare giù (per esempio 3) in fondo alla pagina, mentre un articolo precedente potrebbe comparire (ad esempio 4/5) ... quindi gli utenti dovrebbero leggere il articoli più vecchi invece di quelli più recenti. Ma ci sarebbero degli scenari in cui vorremmo fare quello che ti serve, quindi il mio voto per te! – bit

+0

questo è un ottimo punto .. Non ho qui un requisito di ordinamento temporale, ma se uno dovesse emergere sarebbe un argomento molto forte per lasciarlo così com'è (naturalmente con questo è il modo in cui funziona della scatola e quindi gli utenti si aspettano coerenza con altre app) –

risposta

1

Si dovrebbe usare ItemsWrapGrid:

<ListView.ItemsPanel> 
    <ItemsPanelTemplate> 
     <ItemsWrapGrid /> 
    </ItemsPanelTemplate> 
</ListView.ItemsPanel> 

questo vi darà il risultato che si desidera:

1 4 
2 5 
3 
+0

non proprio da quando ho perso la capacità di scorrimento verticale ... potrebbero esserci dieci righe di due elementi ciascuna, mentre solo tre righe possono essere mostrate alla volta, e io vuoi scorrere verticalmente per vedere gli altri sette. ItemsPanelTemplate si avvolge su tre righe e si distingue come una griglia da quello che posso dire. –

Problemi correlati