我有一个数据对象——一个名为的自定义类Notification
——它公开了一个IsCritical
属性。这个想法是,如果通知将过期,它有一个有效期,并且应该引起用户的注意。
想象一下这个测试数据的场景:
_source = new[] {
new Notification { Text = "Just thought you should know" },
new Notification { Text = "Quick, run!", IsCritical = true },
};
第二个项目应该出现在ItemsControl
带有脉动背景的文本中。这是一个简单的数据模板摘录,显示了我考虑在灰色和黄色之间设置动画背景的方法。
<DataTemplate DataType="Notification">
<Border CornerRadius="5" Background="#DDD">
<Border.Triggers>
<EventTrigger RoutedEvent="Border.Loaded">
<BeginStoryboard>
<Storyboard>
<ColorAnimation
Storyboard.TargetProperty="Background.Color"
From="#DDD" To="#FF0" Duration="0:0:0.7"
AutoReverse="True" RepeatBehavior="Forever" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Border.Triggers>
<ContentPresenter Content="{TemplateBinding Content}" />
</Border>
</DataTemplate>
我不确定的是如何使这个动画以IsCritical
. 如果边界值为,则应保持false
默认背景颜色。#DDD