ListView控件在metro应用没有得到它的垂直滚动条(ListView in a metro

2019-09-23 07:49发布

我不是在Windows应用商店(又名地铁)的应用程序XAML经历过,所以也许我可以俯瞰简单的东西,但根据书籍和样品,垂直滚动条在ListView控件的一个自然组成部分,除非明确禁用会显示在有是在ListView无形物品。

但在我的应用程序的情况下。 我有一个在左窗格中的项目,典型的List /详细信息页面 - 它们显示细末,用滚动条,并在右边窗格中选择项目的详细信息。 选择的项目包含子项目的集合,和他们都应该在情况下,有很多的滚动条显示。 我有一个简单的ListView定义:

            <ListView 
            x:Name="itemCollection"
            Grid.ColumnSpan="1" 
            SelectionChanged="ItemListView_SelectionChanged"
            ItemsSource="{Binding Elements}" 
            ItemTemplate="{StaticResource Custom80ItemTemplate}" />

奇怪的是,我从来没有看到这个列表的滚动条。 只有当我明确地设置其模式为“可见”,我可以看到一个滚动条,但并没有什么用滚动吧!

显然,该方案认为,整个列表可见,所以滚动条是不必要的,但什么可以把它做这样的判断?

Answer 1:

我终于解决了这一问题。 由于大部分的此类问题,错误是愚蠢的:拥有该ListView的Grid控件有一个额外的(错误)的行定义,有标有星号Height属性,即把所有剩余空间。 但一行ListView中使用标为“自动”有高度,因此扩大到其项目的整体规模和从来没有激活它的垂直滚动条。



Answer 2:

尝试设置能见度为自动。



文章来源: ListView in a metro app does not get its vertical scrollbar