zoukankan      html  css  js  c++  java
  • 如何对Visibility属性进行动画(XMAL /CS)

    更新:2007 年 11 月

    对指定 Duration 内的一组 KeyFrames 中的 Object 属性值进行动画处理。

    命名空间:  System.Windows.Media.Animation
    程序集:  PresentationCore (在 PresentationCore.dll 中)
    用于 XAML 的 XMLNS: http://schemas.microsoft.com/winfx/xaml/presentation

    参考:

    http://social.msdn.microsoft.com/Forums/zh-HK/wpf/thread/7d856f82-d112-4a1c-a457-1aeb1abe861b

    http://technet.microsoft.com/zh-cn/office/system.windows.uielement.visibility%28it-it,VS.95%29.aspx

    XAML实现:

    1. <Border Height="100" Width="80" CornerRadius="11,11,11,11" Margin="5" BorderThickness="2" Background="Brown" IsEnabled="False" Name="Bord11">  
    2.     <Border.Triggers>  
    3.         <EventTrigger RoutedEvent="Border.Loaded" >  
    4.             <EventTrigger.Actions>  
    5.                 <BeginStoryboard>  
    6.                     <Storyboard>  
    7.                         <ObjectAnimationUsingKeyFrames  Storyboard.TargetProperty="Visibility" Duration="0:0:4">  
    8.                             <ObjectAnimationUsingKeyFrames.KeyFrames>  
    9.                                 <DiscreteObjectKeyFrame KeyTime="0:0:1" >  
    10.                                     <DiscreteObjectKeyFrame.Value>  
    11.                                         <Visibility>Visible</Visibility>  
    12.                                     </DiscreteObjectKeyFrame.Value>  
    13.                                 </DiscreteObjectKeyFrame>                                                  
    14.                                 <DiscreteObjectKeyFrame KeyTime="0:0:2" >  
    15.                                     <DiscreteObjectKeyFrame.Value>  
    16.                                         <Visibility>Hidden</Visibility>  
    17.                                     </DiscreteObjectKeyFrame.Value>  
    18.                                 </DiscreteObjectKeyFrame>                                                  
    19.                                 <DiscreteObjectKeyFrame KeyTime="0:0:3" >  
    20.                                     <DiscreteObjectKeyFrame.Value>  
    21.                                         <Visibility>Collapsed</Visibility>  
    22.                                     </DiscreteObjectKeyFrame.Value>  
    23.                                 </DiscreteObjectKeyFrame>  
    24.                                   
    25.                             </ObjectAnimationUsingKeyFrames.KeyFrames>  
    26.                         </ObjectAnimationUsingKeyFrames>  
    27.                     </Storyboard>  
    28.                 </BeginStoryboard>  
    29.             </EventTrigger.Actions>  
    30.         </EventTrigger>  
    31.     </Border.Triggers>  
    32.     <Label Height="39" Name="label1" Width="62">ABCDEFGH</Label>  
    33. </Border>  

    后台实现:

    1. ObjectAnimationUsingKeyFrames animate = new ObjectAnimationUsingKeyFrames();  
    2. animate.Duration = new TimeSpan(0,0,4);  
    3. animate.RepeatBehavior = RepeatBehavior.Forever;  
    4. DiscreteObjectKeyFrame kf1 = new DiscreteObjectKeyFrame(Visibility.Visible, new TimeSpan(0, 0, 1));  
    5. DiscreteObjectKeyFrame kf2 = new DiscreteObjectKeyFrame(Visibility.Hidden, new TimeSpan(0, 0, 2));  
    6. DiscreteObjectKeyFrame kf3 = new DiscreteObjectKeyFrame(Visibility.Collapsed, new TimeSpan(0, 0,3));  
    7. animate.KeyFrames.Add(kf1);  
    8. animate.KeyFrames.Add(kf2);  
    9. animate.KeyFrames.Add(kf3);  
    10. Bord11.BeginAnimation(Border.VisibilityProperty, animate);  

  • 相关阅读:
    在使用触摸屏的情况下插拔USB鼠标,鼠标箭头消失
    使用网卡在接收数据包时不会自动组包
    linux开机发现会有个kworker进程规律性占用CPU负载超过50%
    系统时间是否可以精确到ms级别?
    linux开机进入登录界面,输入密码后屏幕黑屏3-10s,然后重新回到登录界面
    linux多网卡情况下,一个网卡进行组播,一个网卡进行点播,同时配置网关后无法通信
    linux中常见内存分配函数(kmalloc,vmalloc等)
    linux内核中的两个标记GFP_KERNEL和GFP_ATOMIC作用是什么?
    gcc: error: unrecognized argument in option ‘-mabi=aapcs-linux’
    shell脚本100例
  • 原文地址:https://www.cnblogs.com/changbaishan/p/3404586.html
Copyright © 2011-2022 走看看