Reputation: 9991
I am not experienced in Windows Store (aka Metro) app XAML, so perhaps I am overlooking something simple, but according to books and samples, a vertical scrollbar is a natural part of a ListView control, and unless explicitly disabled will show up when there are invisible items in the ListView.
But on in the case of my app. I have a typical List/Detail page with items in the left pane - they are displayed fine, with scrollbar, and selected item details in the right pane. Selected item contains a collection of subitems, and they are supposed to be displayed with a scrollbar in case there are many of them. I have a simple ListView definition:
<ListView
x:Name="itemCollection"
Grid.ColumnSpan="1"
SelectionChanged="ItemListView_SelectionChanged"
ItemsSource="{Binding Elements}"
ItemTemplate="{StaticResource Custom80ItemTemplate}" />
Strange enough, I never see a scrollbar for this list. Only when I explicitly set its mode to "Visible", I can see a scroll bar, but there is nothing to scroll it with!
Obviously the program believes that the whole list is visible so scroll bar is unnecessary, but what can make it do such judgement?
Upvotes: 3
Views: 3273
Reputation: 9991
I've finally fixed the problem. As most of such problems, the error was silly: a Grid control that owns this ListView had an extra (wrong) row definition that had Height property marked with asterisk, i.e. taking all remaining space. But the row that ListView was using had Height marked as "Auto", therefore it expanded to the whole size of its items and never activated its vertical scroll bar.
Upvotes: 5