原文:win10 UWP 动画

本文告诉大家如何写同一个简单的动画。

动画入门

本文开始写一个简单的动画,只是移动矩形作为本文的例子。

在 UWP 移动元素的动画,可以使用 RenderTransform 移动,然后使用动画修改 RenderTransform 进行动画。关于元素移动,请看 win10 uwp 拖动控件

首先写一个简单的界面,只有一个矩形

        <Grid x:Name="Bret">
<Rectangle x:Name="Rolernd" Width="100" Height="100" Fill="#FFa2a2a2"
HorizontalAlignment="Center" VerticalAlignment="Top"> </Rectangle>
</Grid>

然后在矩形加上 RenderTransform ,作为移动

        <Grid x:Name="Bret">
<Rectangle x:Name="Rolernd" Width="100" Height="100" Fill="#FFa2a2a2"
HorizontalAlignment="Center" VerticalAlignment="Top">
<Rectangle.RenderTransform>
<TranslateTransform></TranslateTransform>
</Rectangle.RenderTransform>
</Rectangle>
</Grid>

但是因为动画不可以直接播放,先加个按钮,点击按钮时播放。

        <Button Content="确定" Click="Button_OnClick"></Button>

现在界面看起来就是如下

        <Grid x:Name="Bret">
<Rectangle x:Name="Rolernd" Width="100" Height="100" Fill="#FFa2a2a2"
HorizontalAlignment="Center" VerticalAlignment="Top">
<Rectangle.RenderTransform>
<TranslateTransform></TranslateTransform>
</Rectangle.RenderTransform>
</Rectangle>
</Grid> <Button Content="确定" Click="Button_OnClick"></Button>

开始写动画。

需要在 Resources 写动画,于是在页面写上动画,这里使用 DoubleAnimation ,注意需要 Storyboard.TargetName 说明动画的元素。因为 RenderTransform 动画有点难,于是我才写他。

   <Page.Resources>
<Storyboard x:Key="Filiberto">
<DoubleAnimation Storyboard.TargetName="Rolernd" Storyboard.TargetProperty="(Rectangle.RenderTransform).(TranslateTransform.X)"
From="0" To="100" Duration="0:0:1"> </DoubleAnimation>
</Storyboard>
</Page.Resources>

其中的 From 就是修改数值从多少开始,To 就是到多少,后面的属性就是动画时间。写完动画就在按钮写播放,请看代码

        private void Button_OnClick(object sender, RoutedEventArgs e)
{
var s = (Storyboard)Resources["Filiberto"];
s.Begin();
}

点击F5就是可以看到界面出现矩形,按下按钮就向右走

win10 uwp 使用动画修改 Grid column 的宽度

http://www.cnblogs.com/KeithWang/archive/2012/03/30/2425588.html

http://www.cnblogs.com/lin277541/p/4882000.html

http://www.cnblogs.com/lin277541/p/5059489.html

http://www.cnblogs.com/lin277541/p/5064899.html

http://www.cnblogs.com/lin277541/p/5068410.html

http://www.cnblogs.com/lin277541/p/5074697.html

http://www.cnblogs.com/lin277541/p/4881188.html

http://www.cnblogs.com/lin277541/p/4876140.html

http://www.cnblogs.com/mantgh/p/4437892.html

http://www.datiancun.net/thread-1586-1-1.html


本文会经常更新,请阅读原文:
https://blog.lindexi.com/post/win10-UWP-%E5%8A%A8%E7%94%BB.html
,以避免陈旧错误知识的误导,同时有更好的阅读体验。

如果你想持续阅读我的最新博客,请点击 RSS 订阅,推荐使用RSS Stalker订阅博客,或者前往 CSDN 关注我的主页


本作品采用
知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议
进行许可。欢迎转载、使用、重新发布,但务必保留文章署名林德熙(包含链接:
https://blog.lindexi.com
),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请
与我联系

以下是广告时间

推荐关注 Edi.Wang 的公众号


win10 UWP 动画的更多相关文章

  1. Win10 UWP开发系列:实现Master/Detail布局

    在开发XX新闻的过程中,UI部分使用了Master/Detail(大纲/细节)布局样式.Win10系统中的邮件App就是这种样式,左侧一个列表,右侧是详情页面.关于这种 样式的说明可参看MSDN文档: ...

  2. win10 uwp 拖动控件

    我们会使用控件拖动,可以让我们做出好看的动画,那么我们如何移动控件,我将会告诉大家多个方法.其中第一个是最差的,最后的才是我希望大神你去用. Margin 移动 我们可以使用Margin移动,但这是w ...

  3. win10 uwp 渲染原理 DirectComposition 渲染

    本文来告诉大家一个新的技术DirectComposition,在 win7 之后(实际上是 vista),微软正在考虑一个新的渲染机制 在 Windows Vista 就引入了一个服务,桌面窗口管理器 ...

  4. win10 uwp 如何开始写 uwp 程序

    本文告诉大家如何创建一个 UWP 程序. 这是一系列的 uwp 入门博客,所以写的很简单 本文来告诉大家如何创建一个简单的程序 安装 VisualStudio 在开始写 UWP 需要安装 Visual ...

  5. win10 uwp 萤火虫效果

    原文:win10 uwp 萤火虫效果 本文在Nukepayload2指导下,使用他的思想用C#写出来. 本文告诉大家,如何使用 win2d 做出萤火虫效果. 安装 win2d 安装win2d的方法请使 ...

  6. win10 uwp 手把手教你使用 asp dotnet core 做 cs 程序

    本文是一个非常简单的博客,让大家知道如何使用 asp dot net core 做后台,使用 UWP 或 WPF 等做前台. 本文因为没有什么业务,也不想做管理系统,所以看到起来是很简单. Visua ...

  7. win10 uwp win2d CanvasVirtualControl 与 CanvasAnimatedControl

    本文来告诉大家 CanvasVirtualControl ,在什么时候使用这个控件. 在之前的入门教程win10 uwp win2d 入门 看这一篇就够了我直接用的是CanvasControl,实际上 ...

  8. win10 uwp 使用 Border 布局

    在 UWP 写一个界面需要将元素排列,在排列元素的时候有特殊的元素叫容器.容器的意思是元素里面包含元素,在 UWP 用到的容器有很多,也可以自己写一个.简单的容器是 Border 边框控件,如控件说的 ...

  9. Win10 UWP开发系列:使用VS2015 Update2+ionic开发第一个Cordova App

    安装VS2015 Update2的过程是非常曲折的.还好经过不懈的努力,终于折腾成功了. 如果开发Cordova项目的话,推荐大家用一下ionic这个框架,效果还不错.对于Cordova.PhoneG ...

随机推荐

  1. WIN10更换无线网卡后WIFI无法正常启用

    这里根据自己经历提供几个方案: 首先我们要确定这两个地方正常(表示网卡能识别.驱动安装好:有无线开关没打开的朋友请出门右转): 方案一:万能的重启,不觉得麻烦的就多重启几遍.大力出奇迹! 方案二:然后 ...

  2. php文件操作类

    <?php /** *本类为文件操作类,实现了文件的建立,写入,删除,修改,复制,移动,创建目录,删除目录 * 列出目录里的文件等功能,路径后面别忘了加"/" */ clas ...

  3. 1201: 位运算之拼整数(Java)

    WUSTOJ 1201: 位运算之拼整数 题目 原题链接 参考博客 XXXXXyun的博客--输入十六进制数 Description 输入无符号短整数k[hex.]和p[oct.],将k的高字节作为结 ...

  4. Yii2 基于header 实现接口版本控制

    Yii2 官方给出的方案是基于url的版本控制,但是我们的versoin放在header里面,需要通过header来进行版本控制,实现如下: 首先在基类中实现actions,actions是针对con ...

  5. SAS学习笔记44 宏函数

    类SAS函数的宏函数 该部分函数共5个,其无论是名字.语法.功能都与SAS函数类似,只是在函数名前多了一个“%”.这5个宏函数分别是: %INDEX %LENGTH %SCAN %SUBSTR %UP ...

  6. Python+Appium启动手机APP或者浏览器

    一.设备信息配置 脚本如下: from appium import webdriver class my_app(): def __init__(self): desired_caps = {} # ...

  7. 箭头函数的arguments不可用

    ES5中的arguments function func(a,b,c){ console.log(arguments[0],arguments[1],arguments[2]) } func(1,2, ...

  8. (十一)springmvc和spring的整合

    1:Maven引入相关的jar包. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="ht ...

  9. Spring基础篇——DI/IOC和AOP原理初识

    DI(Dependency Injection),依赖注入,和我们常听说的另一个概念 IOC(控制反转)其实归根结底实现的功能是相同的,只是同样的功能站在不同的角度来阐述罢了.这里博主就不去过多的辨析 ...

  10. React/事件系统

    React基于虚拟DOM实现了一个合成事件层,我们所定义的事件处理器会接收到一个合成事件对象的实例事件处理. 并且所有事件都自动绑定在最外层上.如果需要访问原生事件对象,可以使用nativeEvent ...