WrapGrid水平滚动Windows 8

时间:2013-10-04 11:32:46

标签: xaml listview windows-runtime horizontal-scrolling

我有主网格的下一个XAML:

<ListView Grid.Row="1" x:Name="NewsListBox">
            <ListView.Background>
                <SolidColorBrush Color="#FF006C67" Opacity="0.5"/>
            </ListView.Background>
            <ListView.ItemsPanel>
                <ItemsPanelTemplate>
                    <WrapGrid Orientation="Vertical"/>
                </ItemsPanelTemplate>
            </ListView.ItemsPanel>
        </ListView>

它看起来不错,需要它:

但它不会滚动内容!

Example

好的,我添加了ScrollViewer:

<ScrollViewer Grid.Row="1" VerticalScrollMode="Disabled" ZoomMode="Disabled">
        <ListView Grid.Row="1" x:Name="NewsListBox">
            <ListView.Background>
                <SolidColorBrush Color="#FF006C67" Opacity="0.5"/>
            </ListView.Background>
            <ListView.ItemsPanel>
                <ItemsPanelTemplate>
                    <WrapGrid Orientation="Vertical"/>
                </ItemsPanelTemplate>
            </ListView.ItemsPanel>
        </ListView>
        </ScrollViewer>

它会垂直堆叠所有内容:

Example

我做错了什么?

2 个答案:

答案 0 :(得分:5)

找到解决方案。不需要ScrollViewer。

只需用GridView替换ListView,因为ListView不是为水平滚动而设计的。

答案 1 :(得分:1)

你可以试试这个

<ListView
    ScrollViewer.HorizontalScrollMode="Enabled"
    ScrollViewer.VerticalScrollMode="Disabled"
>