如何有效使用Pivot
本文关键字:Pivot 有效 何有效 | 更新日期: 2023-09-27 17:57:40
我的WP7应用程序中有以下数据结构。我通过数据绑定生成三个PivotItems
,绑定的内容。有趣的是,当数据透视项发生绑定时,内容(项)会被查询三次,然后再进行选择更改。
我做错了什么吗?
代码:
<controls:Pivot Title="{StaticResource ApplicationName}" ItemsSource="{Binding Folders}" SelectedItem="{Binding SelectedFolder, Mode=TwoWay}" Name="_pivot">
<controls:Pivot.ItemTemplate>
<DataTemplate>
<ListBox DataContext="{Binding Source={StaticResource Locator}}" ItemsSource="{Binding ThingsListViewModel.Items}" />
</DataTemplate>
</controls:Pivot.ItemTemplate>
我有三个文件夹项,当创建Pivot控件时,ThingsListViewModel.Items
属性执行三次,每次选择更改时执行一次。
我希望ThingsListViewModel.Items
只对Pivot控件执行选择更改。
我认为您需要监听数据透视的LoadedPivotItem和Loaded事件。Loaded事件将始终加载第一个数据透视项(LoadedPivotItem)。不会调用该事件。当用户滑动到另一个数据透视项时,会调用LoadedPivotItem。
根据这些事件,您应该运行对当前SelectedPage的查询。您可能还希望在加载每个数据透视的数据后使用一个标志来指示,以避免再次运行查询。