我是SilverLight和Windows Phone编程的新手。我正在开发一个Twitter应用程序。在时间轴视图中 - 当我点击刷新应用程序时,提取Twitter提要数据并在已有的提要之上进行更新。我将所有早期的Feed保存在独立存储中。
现在我的问题是每当我刷新Feed列表框位置都会到顶部。如何保留滚动较早的位置?我是SilverLight和Windows Phone的新手。
<ListBox ItemsSource="{Binding feeds}" Margin="0,10,0,0">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel>
<TextBlock Text="{Binding FeedText}" Style="{StaticResource PhoneTextNormalStyle}" />
<TextBlock Text="{Binding FeedDate}" Style="{StaticResource PhoneTextNormalStyle}" />
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
答案 0 :(得分:0)
这个问题可能会为您解答:Restore Scroll Position in LongListSelector after tombstone
这个问题也许有用:Restoring exact scroll position of a listbox in Windows Phone 7
很大程度上取决于您加载/刷新数据的方式(替换所有数据或更新项目)。在某些情况下,您需要滚动到不同的位置,因为在您希望保持相对位置的其他方案中内容已更改(或项目的顺序)。
从功能的角度确保您知道自己想要发生什么。