Рассмотрим следующий шаблон данных в любом элементе управления списком:
<DataTemplate>
<TextBlock Text="{Binding}" />
</DataTemplate>
и следующие анимации:
<Window.Resources>
<Storyboard x:Key="animExpand">
<DoubleAnimation Storyboard.TargetProperty="Width" To="400" Duration="0:0:1" />
<DoubleAnimation Storyboard.TargetProperty="Height" To="400" Duration="0:0:1" />
</Storyboard>
<Storyboard x:Key="animCollapse">
<DoubleAnimation Storyboard.TargetProperty="Width" To="0" Duration="0:0:1" />
<DoubleAnimation Storyboard.TargetProperty="Height" To="0" Duration="0:0:1" />
</Storyboard>
</Window.Resources>
Теперь мы хотим: когда щелкает любой из TextBlocks, к нему применяется animExpand, и все другие TextBlock имеют animCollapse.
Первая часть проста (триггер сделает это), но вопрос в том, как заставить другие элементы принять участие в этом сценарии?