可以用VisualState动态改变ImageSource吗?

fanshaoer 2010-11-09 01:04:42

<VisualState x:Name="MouseOver">
<Storyboard>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="ButtonContentGrid" Storyboard.TargetProperty="(Grid.Background).(ImageBrush.ImageSource)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Image Source="Temp/test_mouseover.PNG"/>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState> </Storyboard>
</VisualState>


不行啊。。。
...全文
99 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
fanshaoer 2010-11-09
  • 打赏
  • 举报
回复
但是我想知道为什么不是Storyboard.TargetProperty="(Background).(ImageBrush.Imagesource)"
fanshaoer 2010-11-09
  • 打赏
  • 举报
回复
解决了,Storyboard.TargetProperty应该是background啊。。。不用写imagebrush.imagesource

<VisualState x:Name="MouseOver">
<Storyboard>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="ButtonContentGrid" Storyboard.TargetProperty="(Background)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<ImageBrush ImageSource="Temp/test_mouseover.PNG"/>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>

fanshaoer 2010-11-09
  • 打赏
  • 举报
回复
具体怎么写啊,没看明白。。。[Quote=引用 1 楼 lieri111 的回复:]

把image设置一个id ,直接用id动态改变Source的路径就可以
[/Quote]
passself 2010-11-09
  • 打赏
  • 举报
回复
把image设置一个id ,直接用id动态改变Source的路径就可以

8,735

社区成员

发帖
与我相关
我的任务
社区描述
WPF/Silverlight相关讨论
社区管理员
  • WPF/Silverlight社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧