gpt4 book ai didi

wpf - 使用 Storyboard 在动画期间更改图像

转载 作者:行者123 更新时间:2023-12-04 01:27:23 25 4
gpt4 key购买 nike

我正在寻找一种在 Storyboard期间更改图像的方法,或者更具体地说,更改 Source图像的属性指向一个新的图像资源。好像有StringAnimationUsingKeyFrames和一个 DiscreteStringKeyFrame但这不起作用(据我所知),因为 Image 的 Source 属性的类型是 ImageSource
我目前的 Storyboard看起来像这样

<Storyboard x:Key="TransitionImage">
<DoubleAnimationUsingKeyFrames
BeginTime="00:00:00"
Storyboard.TargetName="image"
Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleX)">
<SplineDoubleKeyFrame KeyTime="00:00:00.7000000" Value="0.2"/>
<SplineDoubleKeyFrame KeyTime="00:00:01.5000000" Value="1"/>
</DoubleAnimationUsingKeyFrames>
<StringAnimationUsingKeyFrames
BeginTime="00:00:00"
Storyboard.TargetName="image"
Storyboard.TargetProperty="(Image.Source)">
<!-- This does not work -->
<DiscreteStringKeyFrame KeyTime="00:00:00.7000000" Value="check_24.png"/>
</StringAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames
BeginTime="00:00:00"
Storyboard.TargetName="image"
Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleY)">
<SplineDoubleKeyFrame KeyTime="00:00:00.7000000" Value="0.2"/>
<SplineDoubleKeyFrame KeyTime="00:00:01.5000000" Value="1"/>
</DoubleAnimationUsingKeyFrames>
</Storyboard>

和图像
<Image x:Name="image" 
Source="delete_24.png"
Width="32" Height="32"
Margin="8"
RenderTransformOrigin="0.5,0.5">
<Image.RenderTransform>
<TransformGroup>
<ScaleTransform/>
<SkewTransform/>
<RotateTransform/>
<TranslateTransform/>
</TransformGroup>
</Image.RenderTransform>
</Image>

我可以更改 Source将图像作为 Storyboard的一部分还是我运气不好?

最佳答案

好的,自己解决了。看来您必须使用 ObjectAnimationUsingKeyFramesDiscreteObjectKeyFrame如下图:

<ObjectAnimationUsingKeyFrames 
BeginTime="00:00:00"
Storyboard.TargetName="image"
Storyboard.TargetProperty="(Image.Source)">
<DiscreteObjectKeyFrame KeyTime="00:00:00.7000000">
<DiscreteObjectKeyFrame.Value>
<BitmapImage UriSource="check_24.png" />
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>

关于wpf - 使用 Storyboard 在动画期间更改图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1799565/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com