前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >Blend生成的TransformGroup如何引用?

Blend生成的TransformGroup如何引用?

作者头像
菩提树下的杨过
发布于 2018-01-23 06:37:25
发布于 2018-01-23 06:37:25
9050
举报

很多时候,blend在制作动画时,会自动为对象生成如下代码:

代码语言:js
AI代码解释
复制
<Rectangle Fill="White" Stroke="Black" HorizontalAlignment="Center" VerticalAlignment="Center" Width="300" Height="30" RenderTransformOrigin="0.5,0.5" x:Name="rect">
 <Rectangle.RenderTransform>
 <TransformGroup>
 <ScaleTransform/>
 <SkewTransform/>
 <RotateTransform/>
 <TranslateTransform/>
 </TransformGroup>
 </Rectangle.RenderTransform>
 </Rectangle>

如果想在cs代码中动态控制,就得先知道如何引用它们,在不借助x:Name的情况下,可以这么做: 

代码语言:js
AI代码解释
复制
private void Button_Click(object sender, RoutedEventArgs e)
        {            

 RotateTransform r = (rect.RenderTransform as TransformGroup).Children[2] as RotateTransform;

            DoubleAnimation dblAnim = new DoubleAnimation() { Duration = TimeSpan.FromSeconds(1), To = 135.0, EasingFunction = new BackEase() { EasingMode = EasingMode.EaseInOut } };         

            Storyboard.SetTarget(dblAnim, r);
            Storyboard.SetTargetProperty(dblAnim, new PropertyPath(RotateTransform.AngleProperty));

            Storyboard sb = new Storyboard();
            sb.Children.Add(dblAnim);           
            sb.AutoReverse = true;
            sb.Begin();           

        }
    }

上面的代码,将生成一段动画:1秒钟内将矩形旋转135度       

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

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

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

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

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
wpf滑动动画_旋转平移矩阵
其重要的两个方法`Storyboard.SetTarget();`绑定动画和`Storyboard.SetTargetProperty();`依赖的属性 一般用法有:
全栈程序员站长
2022/11/01
1.7K0
代码创建 WPF 旋转、翻转动画(汇总)
先建立一个button <Button Width="80" Height="60" Content="旋转" Name="trans" Click="trans_Click" Style="{x:Null}"/> 方法一:绕左上角旋转 public void Transform1() { RotateTransform rtf = new RotateTransform(); trans.RenderTransform
hbbliyong
2018/03/05
3.5K0
代码创建 WPF 旋转、翻转动画(汇总)
DoubleAnimation方法
现在silverlight中还不支持直接用c#代码来创建动画,只能通过XamlReader来加载storyboard。 今天看了DoubleAnimation这个方法。可以动态的设置属性。   这里就很奇怪。我动态的new出来的巨型一直不发生变化。而直接在舞台上画出的巨型就能发生变化。 研究了好久才发现DoubleAnimation只能操作已经声明过的属性。 <Rectangle Width="46" Height="41" Fill="#FFA74545" Stroke="#FF000000" Ca
用户1172164
2018/01/16
6440
silverlight中用代码动态控制Storyboard(动画)属性的三种方法
先准备一个基本的xaml页面 1<navigation:Page 2 xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 3 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 4 xmlns:d="http://schemas.microsoft.com/expression/blend/2008
菩提树下的杨过
2018/01/23
5410
WPF 动画实战 点击时显示圆圈淡出效果
本文告诉大家一个有趣的动画,在鼠标点击的时候,在点击所在的点显示一个圆圈,然后这个圆圈做动画变大,但是颜色变淡的效果。本文的控件可以让大家将对应的容器放在自己应用里面就能实现这个效果
林德熙
2020/04/16
2.5K0
sliverlight:按点击移动的连续跑马灯
演示效果如下: 鼠标点击一次,所有方块向左移动一格 思路: 1.利用StoryBoard产生移动,每次点击时,该动画播放一次(即移动一格) 2.关键:动画播放完毕后,调用Stop方法,以回到初始位置,
菩提树下的杨过
2018/01/23
7710
sliverlight:按点击移动的连续跑马灯
WPF 后台代码做 TranslateTransform 的动画
今天小伙伴问我一个问题,说为什么相同的代码,如果设置到按钮上,是可以让按钮的某个属性变更,但是如果设置给 TranslateTransform 的 X 或 Y 就不会有任何值变更
林德熙
2021/12/24
8050
WPF加载中实现
加载页面 XAML <Window x:Class="SchoolClient.Wins.LoadDialog" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Width="100" Height="100" AllowsTransparency="True"
码客说
2020/07/27
9680
[UWP]为番茄钟应用设计一个平平无奇的状态按钮
OnePomodoro应用里有个按钮用来控制计时器的启动/停止,本来这应该是一个包含“已启动”和“已停止”两种状态的按钮,但我以前在WPF和UWP上做过太多StateButton、ProgressButton之类的东西,已经厌倦了这种控件,所以我在OnePomodoro应用里只是简单地使用两个按钮来实现这个功能:
dino.c
2019/11/13
6970
SilverLight实现绕垂直中线翻转效果
主要通过StoryBoard来控制PlaneProjection的RotationY来实现
MJ.Zhou
2022/05/07
4380
win10 UWP 圆形等待
使用 RectangleStyle1 在 Rectangle 使用 style="{StaticResource RectangleStyle1}"
林德熙
2018/09/18
4090
win10 UWP 圆形等待
[silverlight] silverlight3新增功能2:WriteableBitmap
使用 WriteableBitmap 类基于每个框架来更新和呈现位图。这对于拍摄正播放视频的快照、生成算法内容(如分形图像)和数据可视化(如音乐可视化应用程序)很有用。
dino.c
2019/01/18
4440
[silverlight] silverlight3新增功能2:WriteableBitmap
silverlight如何在运行时用代码动态控制(或创建)动画
silverlight做一些复杂动画时,不可能所有的动画都事先用Blend之类的设计工具"画"好(或者在设计期就在vs里编好),很多时候我们希望在运行时能动态控制动画,或者凭空动态创建一段动画. s
菩提树下的杨过
2018/01/23
1.5K0
silverlight如何在运行时用代码动态控制(或创建)动画
[WPF自定义控件库]了解WPF的布局过程,并利用Measure为Expander添加动画
这篇文章介绍WPF UI元素的两步布局过程,并且通过Resizer控件介绍只使用Measure可以实现些什么内容。
dino.c
2019/07/18
1.5K0
[WPF自定义控件库]了解WPF的布局过程,并利用Measure为Expander添加动画
WPF 实现滚动字幕动画
程序要显示动态,日志之类的东西,在一个区域中显示一个文本,需要替换时,直接就换了也没啥,可是想要弄的美观一点,加个动画就美滋滋了
zls365
2021/04/23
1.9K0
WPF 实现滚动字幕动画
Silverlight之ListBox/Style学习笔记--ListBox版的图片轮换广告
ListBox是一个很有用的控件,其功能直逼Asp.Net中的Repeater,它能实现自定义数据项模板,纵向/横向排列Item(如果扩展一下实现自行折行,几乎就是SL版的Repeater了--实际上WrapPanel已经实现了,不过没有默认集成在SL3中).  这里推荐一个老外的文章 http://blogs.msdn.com/delay/archive/2008/03/05/lb-sv-faq-examples-notes-tips-and-more-for-silverlight-2-beta-1-s
菩提树下的杨过
2018/01/22
1K0
Silverlight之ListBox/Style学习笔记--ListBox版的图片轮换广告
WPF实现跳动的字符效果
本文将介绍一个好玩但实际作用可能不太大的动画效果:跳动的字符。为了提高动画效果的可重用性以及调用的灵活性,通过Behavior实现跳动的字符动画。先看下效果:
czwy
2023/10/22
2750
WPF实现跳动的字符效果
WPF 跳动的文字
先上代码 public MainWindow() { InitializeComponent(); //跳动的文字 Storyboard perChar = new Storyboard(); _text.TextEffects = new TextEffectCollection(); for (int i = 0; i < _text.Text.Length; i++
hbbliyong
2018/03/05
8680
WPF 跳动的文字
WPF值得注意的IsHitTestVisible
说说我的理解吧:把这个属性设置为false,看起来没有变化,但操作上已经把他完全忽视了,不触发事件,可以直接点到它下面的东西。
沙漠尽头的狼
2021/12/01
2K0
WPF值得注意的IsHitTestVisible
从 Matrix 解构出 Translate/Scale/Rotate(平移/缩放/旋转)
发布于 2017-11-20 16:20 更新于 2017-11-22 13:24
walterlv
2018/09/18
4.4K0
从 Matrix 解构出 Translate/Scale/Rotate(平移/缩放/旋转)
相关推荐
wpf滑动动画_旋转平移矩阵
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文