Listview滚动条 - 垂直显示但不起作用,水平不显示但是有效

时间:2013-02-27 14:57:21

标签: xaml windows-runtime

我在网格中定义了以下ListView赢得<RowDefinition Height="8">以占用所有可见区域。 Listview在页面创建时即时绑定,创建和填充。基本上,列表将比可视区域更大,并且比可视区域更高,所以我希望能够向上和向左滚动。

基本上,垂直滚动条出现但不起作用。它显示了许多要滚动的区域,但它不能用鼠标移动。水平滚动似乎显示在列表底部,因为鼠标滚轮水平滚动,但看不到滚动条。

<ListView
x:Name="itemListViewHorizontal"
AutomationProperties.AutomationId="ItemListView"
AutomationProperties.Name="Grouped Items"
Grid.Row="1"
Visibility="Visible"
Margin="0,-10,0,0"
Padding="10,0,0,60"
ItemsSource="{Binding Source={StaticResource SearchItemsViewSource}}"
ItemTemplate="{StaticResource Standard80PersonTemplate}"
SelectionMode="None"
IsSwipeEnabled="false"
IsItemClickEnabled="True"
ItemClick="ItemView_ItemClick">

<ListView.ItemsPanel>
    <ItemsPanelTemplate>
        <VirtualizingStackPanel Orientation="Horizontal"/>
    </ItemsPanelTemplate>
</ListView.ItemsPanel>
<ListView.GroupStyle>
<GroupStyle>
    <GroupStyle.HeaderTemplate>
        <DataTemplate>
            <Grid Margin="7,7,0,0">
                <StackPanel Orientation="Horizontal">
                    <TextBlock Text="{Binding Title}" Margin="3,-7,10,10" Style="{StaticResource GroupHeaderTextStyle}" />
                    <TextBlock Text="{StaticResource ChevronGlyph}" FontFamily="Segoe UI Symbol" Margin="0,-7,0,10" Style="{StaticResource GroupHeaderTextStyle}"/>
                </StackPanel>
            </Grid>
        </DataTemplate>
    </GroupStyle.HeaderTemplate>
    <GroupStyle.Panel>
        <ItemsPanelTemplate>
            <VariableSizedWrapGrid Orientation="Vertical" Margin="0,0,80,0"/>
        </ItemsPanelTemplate>
    </GroupStyle.Panel>
</GroupStyle>
</ListView.GroupStyle>
</ListView>

基本上,我想要的是让左侧和底部的滚动条左右滚动或从上到下滚动。但无论我尝试什么,没有摆脱ItemsPanelTemplate和ItemsPanel信息,这使得单个长列表,它不起作用。

有什么建议吗?

在更改此设置时,我的垂直滚动条可以正常工作,但水平是滚动。

<ListView.ItemsPanel>
    <ItemsPanelTemplate>
        <StackPanel Orientation="Horizontal" ScrollViewer.HorizontalScrollBarVisibility="Visible" ScrollViewer.VerticalScrollBarVisibility="Visible"/>
    </ItemsPanelTemplate>
</ListView.ItemsPanel>

1 个答案:

答案 0 :(得分:1)

好吧,我一直在寻找一种更优雅的方式。显然,stackpanel不能同时用于两个滚动条,尽管它没有明确说明这一点。所以,我用滚动查看器包围我的listview,使用名称,然后在快照视图上禁用。

问题解决了,但是我一直在寻找一种没有那么多嵌套的方法,但是,它就是这样。