私はDataTemplateにいくつかのコントロールを持っています。私はそれを押した状態の動作をコントロールしたいと思います。私は、DataTemplateにVisualStateManagerを配置したところで次のようにしましたが、動作していないようです。私は以下にしようとしていることを理解することは可能だと思います。 DataTemplateタグ内でインラインで行うことは可能ですか?ItemTemplateでDataTemplateのVisualStateを変更することはできますか?
<ItemsControl ItemsSource="{Binding Items}">
....
<ItemsControl.ItemTemplate>
<DataTemplate>
<Grid ...>
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
...
<VisualState x:Name="Pressed">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="BorderThickness" Storyboard.TargetName="GridItemBorder">
<DiscreteObjectKeyFrame KeyTime="0" Value="3"/>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Border x:Name="Border" ...>
...
</Border>
</Grid>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>