WPF для Windows-XP с пакетом обновления 3 (SP3)
У меня проблема с простой анимацией WPF.
Я использую следующий код Xaml (в XamlPad, а также в проекте WPF):
<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" >
<Border Name="MyBorder" BorderThickness="10" BorderBrush="Blue" CornerRadius="10" Background="DarkRed" >
<Rectangle Name="MyRectangle" Margin="10" StrokeDashArray="2.0,1.0" StrokeThickness="10" RadiusX="10" RadiusY="10" Stroke="Black" StrokeDashOffset="0">
<Rectangle.Triggers>
<EventTrigger RoutedEvent="Rectangle.Loaded">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetName="MyRectangle" Storyboard.TargetProperty="StrokeDashOffset" From="0.0" To="3.0" Duration="0:0:1" RepeatBehavior="Forever" Timeline.DesiredFrameRate="30" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Rectangle.Triggers>
</Rectangle>
</Border>
</Page>
Это приводит к тому, что граница анимируется вокруг прямоугольника. После новой перезагрузки машины эта анимация приятная и плавная. Тем не менее, я склонен оставлять свою машину включенной все время, и по истечении определенного периода времени (я не знаю, сколько времени) анимация начинает заикаться и становится прерывистой.
Я думал, что это могут быть проблемы с памятью или ресурсами, но после закрытия всех других приложений и любых служб, которые кажутся ненужными, заикание продолжается. Однако после перезагрузки системы анимация снова плавная!
Я получаю те же симптомы в приложении WPF или в XamlPad. В случае с приложением, похоже, не имеет значения, запускаю ли я его в отладчике или запускаю исполняемый файл напрямую.
Я применил патч по этой ссылке: http://support.microsoft.com/kb/981741 и я думал, что он позаботился о проблеме, но, похоже, нет.
Я видел некоторые сообщения, которые могут указывать на то, что использование прозрачности может повлиять на анимацию, но, как вы видите, мой xaml не использует прозрачность.
Может ли кто-нибудь дать мне несколько советов о том, как определить, в чем проблема? Существуют ли какие-либо средства диагностики WPF, которые могут помочь?
ОБНОВЛЕНИЕ: я проверил свои видеодрайверы, и они являются последней версией. (nVidia GeForce 8400 GS)