Я пытаюсь выполнить анимацию в ячейке в datagrid при изменении значения ячейки datagrid.
Сам файл данных привязан к ObservableCollection простых старых объектов CLR. В этом случае можно сказать, что объекты являются объектами "Человек" со свойствами "Имя", "Фамилия" и "Возраст". Класс "Person" реализует интерфейс INotifyPropertyChanged, и каждое свойство имеет соответствующий вызов onPropertyChanged в нем.
Все в порядке. В определении datagrid я установил свой DataTemplate для рисования каждой ячейки и подключил к нему datatrigger... следующим образом:
<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), datagrid обновляется отлично. В соответствии с приведенным выше примером, если я изменил значение FirstName на "Richard", анимация также будет выполнена отлично.
Моя проблема в том, что мне нужно запустить анимацию независимо от того, что нового значения Firstname. Я просканировал сеть, но некоторые, похоже, только находят примеры запуска триггера против известного значения, например. триггер запуска, когда FirstName - это "Ричард", как я продемонстрировал в своем примере.
Мой вопрос в том, как я могу запустить datatrigger независимо от значения обновленного свойства? Итак, в основном, как я могу запустить datatrigger всякий раз, когда свойство FirstName обновляется для данной строки в datagrid.
Большое спасибо.