zoukankan      html  css  js  c++  java
  • WPF中的动画

    wpf中的的动画效果,有比较多的实现方式
    首先是dispatchertimer这个类,类似timer类,通过设置一个时间间隔来执行方法,可以动态的实现某些动画效果
    具体空间是System.Windows.Threading.DispatcherTimer。可以参考一下msdn,实现比较简单

    wpf中动画效果大部分集中在using System.Windows.Media.Animation下
    wpf的动画效果必须是在依赖属性上,这个空间下有很多类,根据不同类型的属性要用不同类型的动画来实现

    比如可以分为:Boolean,int,byte,char,double,single等类型
    比如控件width,height,fontsize等都是double,那就要用doubleanimatin类了

    使用c#代码实现动画比较简单,这个例子是改变按钮btn的width
     DoubleAnimation da = new DoubleAnimation();
                da.Duration = new Duration(TimeSpan.FromSeconds(5));//持续时间
                da.From = 80;//起始大小
                da.To = 300;//结束大小
                da.FillBehavior = FillBehavior.HoldEnd;//结束以后保持现在的状态or恢复到最初的状态

                this.btn.BeginAnimation(Button.WidthProperty, da);//按钮btn调用

    使用xaml实现动画,看起来比较复杂,标签比较多
    tackPanel>
            <Button Name="btn" Content="Hello World"  Width="80" >
                <Button.Triggers>
                    <EventTrigger RoutedEvent="Button.Click">
                        <BeginStoryboard>
                            <Storyboard TargetProperty="Width">//附加属性
                                <DoubleAnimation From="80" To="300" Duration="0:0:2" FillBehavior="Stop"></DoubleAnimation>
                            </Storyboard>
                        </BeginStoryboard>
                    </EventTrigger>
                </Button.Triggers>

    DoubleAnimation 对像几个属性
    from:起始大小
    to:结束大小
    By:结束值是Form+By。to和by不能同时指定,如果同时指定,by将被忽略
    fillbehavior:结束以后的状态:stop恢复到原来,holdend保持

    本文使用Blog_Backup未注册版本导出,请到soft.pt42.com注册。

  • 相关阅读:
    会议管理要素
    项目管理—沟通管理
    项目管理的五大过程组和十大知识领域
    fastjson $ref引用问题
    项目管理——问题解决方法
    windows服务器添加磁盘后,提示The disk is offline because of policy set by an administrator的解决办法
    关于bat/cmd中转义符的使用
    关于bat中日期时间字符串的格式化
    关于windows服务器的Security安全类日志的导出
    关于windows服务器创建一个ps1脚本的周期性定时任务
  • 原文地址:https://www.cnblogs.com/zjypp/p/2319318.html
Copyright © 2011-2022 走看看