我在PivotItem中创建了信息,但由于某些原因,项目不滚动,我尝试滚动但它创建了一种压缩效果而不是向下滚动。
我尝试用ScrollViewer
包装它并尝试
<ItemsControl.Template>
<ControlTemplate>
<ScrollViewer VerticalScrollBarVisibility="Visible" VerticalScrollMode="Enabled">
<ItemsPresenter />
</ScrollViewer>
</ControlTemplate>
</ItemsControl.Template>
没有运气 - 任何人都可以找出可能出错的地方吗?
<PivotItem Header="unread">
<ItemsControl ItemsSource="{Binding Categories}" >
<ItemsControl.Template>
<ControlTemplate>
<ScrollViewer VerticalScrollBarVisibility="Visible" VerticalScrollMode="Enabled" BringIntoViewOnFocusChange="True">
<ItemsPresenter />
</ScrollViewer>
</ControlTemplate>
</ItemsControl.Template>
<ItemsControl.ItemTemplate>
<DataTemplate>
// ---
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</PivotItem>
答案 0 :(得分:7)
只需将ScrollViewer放在ItemsControl周围,而不是在其中。像这样:
<Pivot TabNavigation="Once">
<PivotItem Header="unread">
<ScrollViewer>
<ItemsControl ItemsSource="{Binding Categories}">
//Some ItemsControl properties and stuff
</ItemsControl>
</ScrollViewer>
</PivotItem>
</Pivot>
<强>解决强>
对于读这篇文章的每个人来说 - 问题是Pivot在StackPanel中。并且ScrollViewers不能在StackPanels内部工作,因为这些面板具有无限的高度(或宽度,取决于方向),然后在一切都适合时无需滚动。但是,您可以在ScrollViewer中使用StackPanel。