Have TextBlock with DoubleAnimation in StoryBoard.
On Windows 7 – 1-2% CPU usage all the time.
On Windows XP SP3 – 10-15% CPU usage.
<TextBlock Grid.Column="1" Height="Auto" Margin="10,0,0,0" TextWrapping="Wrap" HorizontalAlignment="Left" VerticalAlignment="Center" PreviewMouseDown="incomMessages_SelectionChanged">
<TextBlock.Text>
<Binding Mode="OneTime" Converter="{StaticResource Converter}" ConverterParameter="NameAndId"/>
</TextBlock.Text>
<TextBlock.Style>
<Style>
<Style.Triggers>
<DataTrigger Binding="{Binding IsNew}" Value="True">
<DataTrigger.EnterActions>
<BeginStoryboard Name="Blink">
<Storyboard BeginTime="00:00:01" RepeatBehavior="Forever">
<DoubleAnimation Storyboard.TargetProperty="(TextBlock.Opacity)" From="0" To="1" Duration="0:0:1" RepeatBehavior="Forever" AutoReverse="True"/>
</Storyboard>
</BeginStoryboard>
</DataTrigger.EnterActions>
</DataTrigger>
</Style.Triggers>
</Style>
</TextBlock.Style>
</TextBlock>
Am i doing something wrong or it is WPF feature?
You could check the RenderCapability.Tier property. It indicates the rendering tier for the current thread
If
RenderCapability.Tieris 0 you could change the Storyboard.DesiredFrameRate property. The default value is 60 but on Windows XP you could set it lower.For how to do you can have a look here