0

不久前我写了一个 Windows Phone 7 跳转列表控件:

http://www.scottlogic.co.uk/blog/colin/2011/01/a-windows-phone-7-jump-list-control/

我收到了很多人的请求,希望在跳转列表的顶部添加一个“芒果”风格的“粘性”类别标题。我已经在控件的顶部添加了一个类别标题,并制定了如何更新它的位置,以便它在列表滚动时滑入到位,但是,Mango 给我带来了一些问题......

使用 NoDo,当 ScrollViewer 滚动时,我通过在 ScrollViewer 模板中定位 Scrollbar 并处理 ValueChanged 事件来更新我的 UI。这在我的 NoDo 手机上运行良好。

但是,我有 Mango 开发人员工具,当我在模拟器中运行相同的代码时,“粘性”类别标题位置会跳转而不是平滑移动。我的猜测是,这在某种程度上与 Mango 中的滚动改进有关,UI 是否通过渲染/合成器线程更新而没有触发 ValueChanged 事件?

我也尝试过通过 CompositionTarget.Rendering 更新 UI,这在 Mango 中也很令人兴奋。此外,由于 WP7 控件未实现 IDisposable,因此很难确定何时删除对该事件的订阅。

那么,有谁知道我该如何解决这个问题?如何在 Mango WP7 设备上平滑地更新我的 UI 以响应垂直滚动?

4

1 回答 1

1

您可以按照Silverlight for Windows Phone 性能团队博客ScrollViewer.ManipulationMode="Control"中的说明设置附加属性,选择退出 mango 滚动性能改进。我希望这可以解决您一直遇到的问题。

于 2011-09-07T15:51:54.507 回答