【问题标题】:WP7 Updating the UI while scrolling (Mango)WP7 在滚动时更新 UI (Mango)
【发布时间】:2011-09-07 23:51:54
【问题描述】:

不久前我写了一个 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 以响应垂直滚动?

【问题讨论】:

    标签: silverlight windows-phone-7 windows-phone-7.1


    【解决方案1】:

    您可以通过设置ScrollViewer.ManipulationMode="Control" 附加属性(如Silverlight for Windows Phone Performance team blog 中所述)来选择退出芒果滚动性能改进。我希望这能解决您一直遇到的问题。

    【讨论】:

      猜你喜欢
      • 2018-06-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多