2014-12-16 7 views
6

Ich möchte ein ListView in einer Windows 8.1 App so gestalten, dass seine Elemente in (höchstens) zwei Spalten umlaufen, die in der Reihenfolge einer Zeitung gelesen werden und vertikal z ,So zeigen Sie Elemente in zwei Spalten in einem ListView an

1 4 
2 5 
3 

die nächstgelegene ich bekommen habe, ist:

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

aber da MaximumRowsAndColumns pro der Orientation interpretiert wird, ist das Ergebnis

1 2 
3 4 
5 

die Orientation zu Vertical Schale gibt mir

1 2 3 
4 5 

Bin ich eine eigene Platte müssen, dies zu tun? Eine andere Taktik ist vielleicht eine Gridview in einem Scrollviewer, aber das scheint mir ein bisschen hacky zu sein.

+0

ich denke, es wäre klug, es auf diese Weise selbst zu halten, denn wenn Sie das arrangieren Englisch: www.mjfriendship.de/en/index.php?op...27&Itemid=47 Es würde bedeuten, dass ein neuer Artikel (zB 3) unten auf der Seite erscheinen könnte, während ein älterer Artikel aufblähen könnte (zB 4/5) .. also würden die Nutzer den Artikel lesen ältere Artikel statt der neuesten. Aber es würde Szenarien geben, in denen wir tun würden, was Sie brauchen, daher meine Stimme an Sie! – bit

+0

das ist ein sehr guter Punkt .. Ich habe hier keine zeitliche Sortierung, aber wenn man auftauchen sollte, wäre das ein wirklich starkes Argument dafür, es so zu lassen, wie es ist (natürlich mit der Art, wie es funktioniert von der Box und so würde Benutzer Konsistenz mit anderen Anwendungen erwarten) –

Antwort

1

sollten Sie ItemsWrapGrid verwenden:

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

Dies wird Ihnen das Ergebnis, das Sie wollen:

1 4 
2 5 
3 
+0

nicht wirklich, da ich vertikale Scroll-Fähigkeit verlieren ... es könnte sagen, zehn Zeilen mit je zwei Elementen, während nur drei Zeilen gleichzeitig zeigen können, und ich würde möchte vertikal scrollen, um die anderen sieben zu sehen. ItemsPanelTemplate wird nach drei Zeilen umgebrochen und ähnelt einer Gridview von dem, was ich sagen kann. –

Verwandte Themen