我目前正在WP8 App上使用Store TestKit。
我有一个Pivot。一个PivotItem有几个元素,比如TextBox,它被绑定到我的ViewModel(MVVM-Pattern)。无论如何,当我点击在UI中安静下来的TextBox时,动画不流畅。
Store TestKit中的错误是“由于CPU绑定动画导致的低帧速率” 所有MY方法都使用max。 20%cpu,但这个需要~80%:
(Systemeigene Funktion = System Managed Funktion
Stichprobe =样品)
如何降低价值?因为它不是我创建的函数,所以我不能使用Thread。我看过这篇文章http://www.expressionblend.com/articles/2012/03/23/wp7-performance-tip-translate-transforms/。它描述了我的问题,但没有给出解决方案。
这是我的ViewModel中的属性:
private string _myval;
public string MyVal
{
get { return _myval; }
set
{
_myval = value;
RaisePropertyChanged(() => MyVal);
}
}
但财产不是问题......
答案 0 :(得分:1)
好的哇,这家伙的好文章:
http://fiercedesign.wordpress.com/2012/08/14/windows-phone-performance-best-practices/
阅读主题“重绘区域”
如果UI不流畅/流畅,您必须每次都要检查UI正在重绘哪些元素。您可以通过转到App.xaml.cs并启用重绘区域
来完成此操作Application.Current.Host.Settings.EnableRedrawRegions = true;
如果某个区域或元素闪烁,则表示出现问题。尝试添加
CacheMode="BitmapCache"
到您的元素。
我的应用中有很多颜色闪烁。 UI重新绘制,即我的TextBlocks,即使我没有改变它。我所要做的就是改变所有元素(尤其是TextBlocks和Grids):
<TextBlock CacheMode="BitmapCache"/>
该应用程序现在正在流动。