有没有人知道,是否有办法使用动画作为绑定源的属性? 据我所知,动画不是“真正”设置属性的值,因此不会触发更改的事件,这是触发绑定所需的。
TIA 马丁
答案 0 :(得分:4)
我不知道你说的是否完全正确。在下面的XAML中,TextBlock将显示Rectangle的宽度。单击“矩形”时,“宽度”属性的动画范围为50到300.沿着每个增量,TextBlock的值都会更改。我不明白你的问题吗?
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<TextBlock Text="{Binding ElementName=Rect,Path=Width}" Grid.Row="0" />
<Rectangle Grid.Row="1"
Name="Rect"
Height="30"
Width="50"
Fill="Blue"
HorizontalAlignment="Left">
<Rectangle.Triggers>
<EventTrigger RoutedEvent="Rectangle.MouseLeftButtonDown">
<EventTrigger.Actions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetProperty="Width"
From="50"
To="300"
Duration="0:0:10"/>
</Storyboard>
</BeginStoryboard>
</EventTrigger.Actions>
</EventTrigger>
</Rectangle.Triggers>
</Rectangle>
</Grid>
答案 1 :(得分:2)
动画实际上确实改变了值,它确实调用了传递给DependecyProperty.Register的属性更改回调,它确实导致了所需的布局/渲染通道ID。