<Window x:Class="simplewpf.chuantixx" Name="DW1"         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"         Title="chuantixx" Height="300" Width="300"  WindowStartupLocation="CenterScreen">           <Window.Resources>             <!--此样式能去除按钮点击后的虚线框-->             <Style x:Key="MyFocusVisual">                 <Setter Property="Control.Template">                     <Setter.Value>                         <ControlTemplate>                             <Rectangle Margin="-2" StrokeThickness="0" Stroke="Red" StrokeDashArray="1 2"/>                         </ControlTemplate>                     </Setter.Value>                 </Setter>             </Style>             <!--原始旋转出来样例-->             <Storyboard x:Key="showDW">                 <DoubleAnimation Storyboard.TargetName="Canvas1"                         Storyboard.TargetProperty="Opacity"                         From="0.2" To="1" Duration="0:0:2.5">                 </DoubleAnimation>                 <DoubleAnimation Storyboard.TargetName="Canvas1"                         Storyboard.TargetProperty="RenderTransform.Children[1].Angle"                         From="70" To="0" Duration="0:0:2" >                 </DoubleAnimation>                 <DoubleAnimation Storyboard.TargetName="Canvas1"                         Storyboard.TargetProperty="RenderTransform.Children[0].ScaleX"                         From="0" To="1" Duration="0:0:2"                         AccelerationRatio="1">                 </DoubleAnimation>                 <DoubleAnimation Storyboard.TargetName="Canvas1"                         Storyboard.TargetProperty="RenderTransform.Children[0].ScaleY"                         From="0" To="1" Duration="0:0:2"                         AccelerationRatio="1">                 </DoubleAnimation>                 <DoubleAnimation Storyboard.TargetName="Canvas1"                         Storyboard.TargetProperty="RenderTransform.Children[0].ScaleX"                         To="0.98" BeginTime="0:0:2" Duration="0:0:0.05"                         DecelerationRatio="1">                 </DoubleAnimation>                 <DoubleAnimation Storyboard.TargetName="Canvas1"                         Storyboard.TargetProperty="RenderTransform.Children[0].ScaleY"                         To="0.98" BeginTime="0:0:2" Duration="0:0:0.05"                         DecelerationRatio="1">                 </DoubleAnimation>                 <DoubleAnimation Storyboard.TargetName="Canvas1"                         Storyboard.TargetProperty="RenderTransform.Children[0].ScaleX"                         To="1" BeginTime="0:0:2.05" Duration="0:0:0.2"                          AccelerationRatio="1">                 </DoubleAnimation>                 <DoubleAnimation Storyboard.TargetName="Canvas1"                                      Storyboard.TargetProperty="RenderTransform.Children[0].ScaleY"                         To="1" BeginTime="0:0:2.05" Duration="0:0:0.2"                         AccelerationRatio="1">                 </DoubleAnimation>             </Storyboard>             <!--原始的旋转回去样例-->             <Storyboard x:Key="closeDW">                 <DoubleAnimation Storyboard.TargetName="Canvas1"                       Storyboard.TargetProperty="RenderTransform.Children[1].Angle"                       To="360" Duration="0:0:1.5" >                 </DoubleAnimation>                 <DoubleAnimation Storyboard.TargetName="Canvas1"                       Storyboard.TargetProperty="Opacity"                       To="0" Duration="0:0:3">                 </DoubleAnimation>                 <DoubleAnimation Storyboard.TargetName="Canvas1"                       Storyboard.TargetProperty="RenderTransform.Children[0].ScaleX"                       To="0" Duration="0:0:1.5" AccelerationRatio="1">                 </DoubleAnimation>                 <DoubleAnimation Storyboard.TargetName="Canvas1"                       Storyboard.TargetProperty="RenderTransform.Children[0].ScaleY"                       To="0" Duration="0:0:1.5" AccelerationRatio="1">                 </DoubleAnimation>             </Storyboard>             <!--转出来-->             <Storyboard x:Key="showDW1">                 <DoubleAnimation Storyboard.TargetName="Canvas1"                         Storyboard.TargetProperty="Opacity"                         From="0" To="1" Duration="0:0:0.2">                 </DoubleAnimation>                 <DoubleAnimation Storyboard.TargetName="Canvas1"                         Storyboard.TargetProperty="RenderTransform.Children[1].Angle"                         From="180" To="0" Duration="0:0:0.2" >                 </DoubleAnimation>                 <DoubleAnimation Storyboard.TargetName="Canvas1"                         Storyboard.TargetProperty="RenderTransform.Children[0].ScaleX"                         From="0.2" To="1" Duration="0:0:0.2"                         AccelerationRatio="1">                 </DoubleAnimation>                 <DoubleAnimation Storyboard.TargetName="Canvas1"                         Storyboard.TargetProperty="RenderTransform.Children[0].ScaleY"                         From="0.2" To="1" Duration="0:0:0.2"                         AccelerationRatio="1">                 </DoubleAnimation>             </Storyboard>             <!--弹出来-->             <Storyboard x:Key="showDW2">                 <DoubleAnimation Storyboard.TargetName="Canvas1"                         Storyboard.TargetProperty="RenderTransform.Children[0].ScaleX"                         From="0.2" To="0.5" Duration="0:0:0.04" >                 </DoubleAnimation>                 <DoubleAnimation Storyboard.TargetName="Canvas1"                         Storyboard.TargetProperty="RenderTransform.Children[0].ScaleY"                         From="0.2" To="0.5" Duration="0:0:0.04" >                 </DoubleAnimation>                 <DoubleAnimation Storyboard.TargetName="Canvas1"                         Storyboard.TargetProperty="RenderTransform.Children[0].ScaleX"                           From="0.5" To="1" Duration="0:0:0.04" BeginTime="0:0:0.04" >                 </DoubleAnimation>                 <DoubleAnimation Storyboard.TargetName="Canvas1"                         Storyboard.TargetProperty="RenderTransform.Children[0].ScaleY"                          From="0.5" To="1" Duration="0:0:0.04" BeginTime="0:0:0.04">                 </DoubleAnimation>                 <DoubleAnimation Storyboard.TargetName="Canvas1"                         Storyboard.TargetProperty="RenderTransform.Children[0].ScaleX"                          From="1" To="1.2" Duration="0:0:0.04" BeginTime="0:0:0.08" AutoReverse="True" >                 </DoubleAnimation>                 <DoubleAnimation Storyboard.TargetName="Canvas1"                         Storyboard.TargetProperty="RenderTransform.Children[0].ScaleY"                         From="1"  To="1.2" Duration="0:0:0.04" BeginTime="0:0:0.08" AutoReverse="True">                 </DoubleAnimation>             </Storyboard>             <!--转回去-->             <Storyboard x:Key="closeDW1">                 <DoubleAnimation Storyboard.TargetName="Canvas1"                       Storyboard.TargetProperty="RenderTransform.Children[1].Angle"                       To="180" Duration="0:0:0.2" >                 </DoubleAnimation>                 <DoubleAnimation Storyboard.TargetName="Canvas1"                       Storyboard.TargetProperty="Opacity"                       To="0" Duration="0:0:0.2">                 </DoubleAnimation>                 <DoubleAnimation Storyboard.TargetName="Canvas1"                       Storyboard.TargetProperty="RenderTransform.Children[0].ScaleX"                       To="0.2" Duration="0:0:0.2" AccelerationRatio="1">                 </DoubleAnimation>                 <DoubleAnimation Storyboard.TargetName="Canvas1"                       Storyboard.TargetProperty="RenderTransform.Children[0].ScaleY"                       To="0.2" Duration="0:0:0.2" AccelerationRatio="1">                 </DoubleAnimation>             </Storyboard>

<!--弹回去-->             <Storyboard x:Key="closeDW2">                 <DoubleAnimation Storyboard.TargetName="Canvas1"                         Storyboard.TargetProperty="RenderTransform.Children[0].ScaleX"                         From="1" To="1.2" Duration="0:0:0.04"  AutoReverse="True">                 </DoubleAnimation>                 <DoubleAnimation Storyboard.TargetName="Canvas1"                         Storyboard.TargetProperty="RenderTransform.Children[0].ScaleY"                         From="1" To="1.2" Duration="0:0:0.04"  AutoReverse="True">                 </DoubleAnimation>                 <DoubleAnimation Storyboard.TargetName="Canvas1"                         Storyboard.TargetProperty="RenderTransform.Children[0].ScaleX"                           From="1" To="0.5" Duration="0:0:0.04" BeginTime="0:0:0.04" >                 </DoubleAnimation>                 <DoubleAnimation Storyboard.TargetName="Canvas1"                         Storyboard.TargetProperty="RenderTransform.Children[0].ScaleY"                          From="1" To="0.5" Duration="0:0:0.04" BeginTime="0:0:0.04">                 </DoubleAnimation>                 <DoubleAnimation Storyboard.TargetName="Canvas1"                         Storyboard.TargetProperty="RenderTransform.Children[0].ScaleX"                          From="0.5" To="0.2" Duration="0:0:0.04" BeginTime="0:0:0.08"  >                 </DoubleAnimation>                 <DoubleAnimation Storyboard.TargetName="Canvas1"                         Storyboard.TargetProperty="RenderTransform.Children[0].ScaleY"                         From="0.5"  To="0.2" Duration="0:0:0.04" BeginTime="0:0:0.08" >                 </DoubleAnimation>             </Storyboard>         </Window.Resources>

<Window.Triggers>             <!--设置DW1的事件触发-->             <!--注意对窗体window的name取为DW1-->             <EventTrigger SourceName="DW1" RoutedEvent="Window.Loaded">                 <BeginStoryboard Name="showQueryCanvasStoryboard2"                       Storyboard="{StaticResource showDW}">                 </BeginStoryboard>             </EventTrigger>             <!--设置button1的事件触发-->             <!--注意对按钮的name取为button1-->             <EventTrigger SourceName="button1" RoutedEvent="Button.Click">                 <BeginStoryboard Name="closeQueryCanvasStoryboard"                       Storyboard="{StaticResource closeDW}">                 </BeginStoryboard>             </EventTrigger>         </Window.Triggers>

<Canvas Background="Transparent" Height="257" Width="214">             <Canvas Background="Brown" Height="236" Width="201" Canvas.Left="9" Canvas.Top="14" Name="Canvas1">                 <!--设置动画-->                 <Canvas.RenderTransform>                     <TransformGroup>                         <ScaleTransform CenterX="100" CenterY="50"></ScaleTransform>                         <!--缩放中心为100,50。RenderTransform.Children[0]-->                         <RotateTransform CenterX="100" CenterY="50"></RotateTransform>                         <!--旋转中心为100,50。RenderTransform.Children[1]-->                     </TransformGroup>                 </Canvas.RenderTransform>                 <Button Margin="98,107,124,127" Name="button1"  FocusVisualStyle="{DynamicResource MyFocusVisual}"                 Click="button1_Click"  Height="28" Width="112" Canvas.Left="-53" Canvas.Top="77">关闭</Button>                 <CheckBox Height="31" HorizontalAlignment="Left" Margin="32,25,0,0" Name="checkBox1" VerticalAlignment="Top" Width="75" Canvas.Left="11" Canvas.Top="-1">CheckBox</CheckBox>                 <TextBlock Height="35" Margin="124,21,34,0" Name="textBlock1" VerticalAlignment="Top" Background="BlueViolet" Text="dfdf" Width="60" Canvas.Left="-73" Canvas.Top="43" />             </Canvas>         </Canvas>

</Window>

private void button1_Click(object sender, RoutedEventArgs e)
        {   // this.Close();
            ///timer定义
            tm.Tick += new EventHandler(tm_Tick);
            tm.Interval = TimeSpan.FromSeconds(3);
            tm.Start();
        }
      //  using System.Windows.Threading;
        DispatcherTimer tm = new DispatcherTimer();
        void tm_Tick(object sender, EventArgs e)
        {
            this.Close();
        }

网摘 窗体的旋转效果 wpf的更多相关文章

  1. 关于WinForm引用WPF窗体---在Winform窗体中使用WPF控件

    项目中有个界面展示用WPF实现起来比较简单,并且能提供更酷炫的效果,但是在WinForm中使用WPF窗体出现了问题,在网上找了一下有些人说Winform不能引用WPF的窗体,我就很纳闷,Win32都能 ...

  2. Feedly订阅Blog部落格RSS网摘 - Blog透视镜

    网络信息爆炸的时代,如何更有效率地阅读文章,订阅RSS网摘,可以快速地浏览文章标题,当对某些文章有兴趣时,才点下连结连到原网站,阅读更详细的文章,Feedly Reader阅读器除了提供在线版订阅RS ...

  3. Bloglines订阅Blog部落格RSS网摘 - Blog透视镜

    网络信息蓬勃发展,Blog部落格越来越普及,如果逐一地去浏览网站,势必费时费力,倘若信息可以自己送上门,那就可以节省不少时间,就好像看报纸的标题,有兴趣才点连结,进到网站浏览文章内容,Blogline ...

  4. TCP/IP协议头部结构体(网摘小结)(转)

    源:TCP/IP协议头部结构体(网摘小结) TCP/IP协议头部结构体(转) 网络协议结构体定义 // i386 is little_endian. #ifndef LITTLE_ENDIAN #de ...

  5. Vim命令快捷键(网摘)

    Vim命令快捷键(网摘) 原文出处:[?---->home]

  6. winfrom窗体中嵌套WPF控件

    前言 本文主要介绍如何在winfrom窗体中嵌套WPF控件, 一来是自己记录一下,而来希望能对有需要的朋友提供实现思路. 如有错误请指出...下面进入正题... -1.前期准备 准备一个建立好的win ...

  7. c#与C++类型转换网摘

    转载自 C++和C#转换 https://www.cnblogs.com/zjoch/p/4147182.html c#与C++类型转换,网摘 //c++:HANDLE(void   *)       ...

  8. Delphi 中DataSnap技术网摘

    Delphi2010中DataSnap技术网摘 一.为DataSnap系统服务程序添加描述 这几天一直在研究Delphi 2010的DataSnap,感觉功能真是很强大,现在足有理由证明Delphi7 ...

  9. Python入门及容易!网摘分享给大家!

    Python:Python学习总结 背景 PHP的$和->让人输入的手疼(PHP确实非常简洁和强大,适合WEB编程),Ruby的#.@.@@也好不到哪里(OO人员最该学习的一门语言). Pyth ...

随机推荐

  1. Google 面试

    坚持完成这套学习手册,你就可以去 Google 面试了 系统 指针 value Google 面试 阅读10266   本文为掘金投稿,译文出自:掘金翻译计划 原文地址:Google Intervie ...

  2. oracle递归查询树的SQL语句

    来自互联网 SELECT * FROM a_ParkingLot AWHERE A.REGIONID IN(    SELECT r.ID FROM a_region r    START WITH ...

  3. ASP.NET配置Ueditor编辑器上传图片路径

    1.配置ueditor/editor_config.js文件,将 //图片上传配置区 ,imageUrl:URL+"net/imageUp.ashx" //图片上传提交地址 ,im ...

  4. [转]Eclipse工具使用技巧总结

    首先推荐一篇非常好的How to use eclipse文章 ,讲的是eclipse使用的方方面面,非常实用,推荐给大家! 一.常用快捷键:Ctrl+F11 运行Ctrl+Shift+/ 在代码窗口中 ...

  5. 数组的方法 Array.map();Array.every()和Array.some();数组的indexof();检测是否是数组isArray(obj);

    数组的方法 Array.map(); 栗子: var a=[1,2,,3]; var b=a.map( function(value){return value*value} ); alert(b); ...

  6. 安装 Couchbase 服务器

    一. 下载安装包 首先,到官网下载安装包:http://www.couchbase.com/ 下载的地址:http://www.couchbase.com/download 选择 Windows 的版 ...

  7. java-通讯stocket插件mina实例

    mina是对nio的具体实现.是目前比较高效和流行的nio(非阻塞式I/O)框架 mina主要包括: 其中服务端为:NioSocketAcceptor 客户端为:NioSocketConnector ...

  8. Mysql-windows下修改密码

    忘记密码修改(以下各种方法视情况而使用,本人测试,有些都是案情况才可行,但都是有设置成功过) 注:修改密码成功后一定要记得刷新下权限(否则将导致不能使用当前用户连接) mysql>FLUSH P ...

  9. 【POJ 2342】Anniversary party(入门树形dp)

    dp[i][0..1]表示i不来/来参加的最大总高兴值. 则dp[i][1]+=dp[v][0](v是i的所有直接下属) dp[i][0]+=max(dp[v][0],dp[v][1]) 没有告诉你树 ...

  10. 【HDU 4614】Vases and Flowers(线段树区间更新懒惰标记)

    题目0到n-1的花瓶,操作1在下标a开始插b朵花,输出始末下标.操作2清空[a,b]的花瓶,求清除的花的数量.线段树懒惰标记来更新区间.操作1,先查询0到a-1有num个空瓶子,然后用线段树的性质,或 ...