前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >动态创建Storyboard

动态创建Storyboard

作者头像
用户1172164
发布2018-03-01 18:45:23
2.3K0
发布2018-03-01 18:45:23
举报

做动画或者做控件的时候不一定都要在xaml里做Storyboard,有时候在代码里动态创建会更加灵活些。

这里以我做的一个改变颜色的Storyboard为例来做说明。(查了不少英文资料,大多都是对beta2的,和release的版本有些不同)

代码:

代码语言:javascript
复制
Storyboard storyboard = new Storyboard();
            Brush br = xRectangle.Fill;
            ColorAnimation colorAnim = new ColorAnimation();
            colorAnim.To = ToColor;
            colorAnim.Duration = TimeSpan.FromSeconds(1);
            colorAnim.RepeatBehavior = new RepeatBehavior(1);
            colorAnim.AutoReverse = false;
            Storyboard.SetTarget(colorAnim, br);
            Storyboard.SetTargetProperty(colorAnim, new PropertyPath("Color"));
            storyboard.Children.Add(colorAnim);
            Resources.Add("colorsb", storyboard);

这样一个变换颜色的动画就完成了。

Resources.Add("colorsb", storyboard);  

这一句是把Storyboard插入页面的资源中,和beta2不同,资源文件都是建值对应的,所以在这里要指定一个key。

其中高亮部分是我为了做成控件把属性暴露了出去。这个属性就是你要变化到的颜色。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2009-03-09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档