Я пытаюсь выполнить анимацию для ячейки в сетке данных, когда значение ячейки сетки данных изменяется.
Сама сетка данных связана с ObservableCollection простых старых объектов CLR.В этом случае предположим, что объекты являются объектами «Персона» со свойствами «Имя», «Фамилия» и «Возраст».Класс Person реализует интерфейс INotifyPropertyChanged, и каждое свойство имеет соответствующий вызов onPropertyChanged в своем установщике.
Это нормально.В определении сетки данных я установил свой DataTemplate для рисования каждой ячейки и также прикрепил источник данных ... следующим образом:
<DataGridTemplateColumn Header="FirstName">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Border Name="templateBorder">
<TextBlock Name="templateTextBlock" Text="{Binding Path=FirstName}" />
</Border>
<DataTemplate.Triggers>
<DataTrigger Binding="{Binding Path=FirstName}" Value="Richard">
<DataTrigger.EnterActions>
<BeginStoryboard>
<Storyboard AutoReverse="True">
<DoubleAnimation Storyboard.TargetName="templateTextBlock" Storyboard.TargetProperty="Opacity" To=".1" Duration="0:0:.5" />
</Storyboard>
</BeginStoryboard>
</DataTrigger.EnterActions>
</DataTrigger>
</DataTemplate.Triggers>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
Когда объект в моей коллекции ObservableCollection обновляется (я изменил значение FirstName),датагрид обновляется нормально.В соответствии с приведенным выше примером, если я изменил значение FirstName на «Richard», анимация также будет выполнена нормально.
Моя проблема заключается в том, что мне нужно запустить анимацию независимо от того, какое значение имеет Firstname.,Я просканировал сеть, но некоторые пока только находят примеры срабатывания триггера по известному значению, например, срабатывание триггера, когда FirstName имеет значение «Richard», как я продемонстрировал в моем примере.
Мой вопрос заключается в том, какзапустить datatrigger независимо от значения обновленного свойства?Итак, в основном, как мне запускать источник данных всякий раз, когда свойство FirstName обновляется для данной строки в сетке данных.
Большое спасибо.