<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. difference between append and appendTo

    if you need append some string to element and need set some attribute on these string at the same ti ...

  2. zabbix3.0安装教程

    一.Zabbix介绍 zabbix 简介 Zabbix 是一个高度集成的网络监控解决方案,可以提供企业级的开源分布式监控解决方案,由一个国外的团队持续维护更新,软件可以自由下载使用,运作团队靠提供收费 ...

  3. C# 属性、索引

    属性(property): public string Name { get { return _name; } set { _name = value; } } 简写为: public string ...

  4. Android  PNG透明图片转JPG格式背景变黑

    Android  PNG透明图片转JPG格式背景变黑 在上传图片是,需要把PNG格式转换成JPG格式的,但是在遇上透明背景时,转过来就变成黑色底图了! 原因是PNG支持透明图而 JPG格式不支持透明底 ...

  5. Nginx 的编译安装和URL地址重写

    本文转自:http://www.178linux.com/14119#rd?sukey=ecafc0a7cc4a741b573a095a3eb78af6b4c9116b74d0bbc9844d8fc5 ...

  6. hive中行转换成列

    python代码 #!/bin/bashimport sys; if __name__=='__main__': for line in sys.stdin: m=line.strip().split ...

  7. json:There is a cycle in the hierarchy!

    在使用JSONObject.fromObject的时候,出现“There is a cycle in the hierarchy”异常. 意思是出现了死循环,也就是Model之间有循环包含关系: 解决 ...

  8. 关于js中"window.location.href"、"location.href"、"parent.location.href"、"top.location.href"的用法

    location.href 和 window.location.href 区别: 1.location.href 可以直接跳转其他地址(不属于本项目) 也可以跳转本项目中的 2.window.loca ...

  9. Yii日志记录Logging

    .Yii::getLogger()->log($message, $level, $category = 'application') .Yii::trace($message, $catego ...

  10. iOS正则表达式

    //包含数字和字母的密码长度6-16位 -(BOOL) validatePassword:(NSString *)password { //密码正则表达式 NSString *passwordRege ...