WPF - Создание условия выполнения анимации для свойства привязанного элемента данных
У меня есть объект данных - пользовательский класс с именем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
должны быть сохранены.