zoukankan      html  css  js  c++  java
  • WPF 使用EventTrigger时设置SouceName技巧

    使用情节触发器时,如果有触发源/触发源控件时可以将情节触发器放置最顶级的面板控件的触发器中。

    通过blend这个神器真的是可以学到不少东西。

    代码:

    //情节动画放置于顶级控制面板
    <Widnow.Resources>
      <Storyboard x:Key="OnMouseLeftButtonUpForGrid">
                <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleX)" Storyboard.TargetName="dockPanel">
                    <EasingDoubleKeyFrame KeyTime="0" Value="0.675"/>
                    <EasingDoubleKeyFrame KeyTime="0:0:0.4" Value="0.896"/>
                    <EasingDoubleKeyFrame KeyTime="0:0:0.6" Value="0.997"/>
                </DoubleAnimationUsingKeyFrames>
                <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleY)" Storyboard.TargetName="dockPanel">
                    <EasingDoubleKeyFrame KeyTime="0" Value="0.638"/>
                    <EasingDoubleKeyFrame KeyTime="0:0:0.4" Value="0.835"/>
                    <EasingDoubleKeyFrame KeyTime="0:0:0.6" Value="0.991"/>
                </DoubleAnimationUsingKeyFrames>
                <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[3].(TranslateTransform.X)" Storyboard.TargetName="dockPanel">
                    <EasingDoubleKeyFrame KeyTime="0" Value="111"/>
                    <EasingDoubleKeyFrame KeyTime="0:0:0.4" Value="35.25"/>
                    <EasingDoubleKeyFrame KeyTime="0:0:0.6" Value="0.75"/>
                </DoubleAnimationUsingKeyFrames>
                <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[3].(TranslateTransform.Y)" Storyboard.TargetName="dockPanel">
                    <EasingDoubleKeyFrame KeyTime="0" Value="-66"/>
                    <EasingDoubleKeyFrame KeyTime="0:0:0.4" Value="-30"/>
                    <EasingDoubleKeyFrame KeyTime="0:0:0.6" Value="-1.5"/>
                </DoubleAnimationUsingKeyFrames>
            </Storyboard>
    </Window.Resources>
    <Window.Triggers>
     <EventTrigger RoutedEvent="UIElement.MouseLeftButtonUp" SourceName="grid1">
                <BeginStoryboard x:Name="OnMouseLeftButtonUpForGrid_BeginStoryboard" Storyboard="{StaticResource OnMouseLeftButtonUpForGrid}"/>
            </EventTrigger>
    </Window.Triggers>
    <DockPanel x:Name="dockPanel" RenderTransformOrigin="0.5,0.5">
                <DockPanel.RenderTransform>
                    <TransformGroup>
                        <ScaleTransform/>
                        <SkewTransform/>
                        <RotateTransform/>
                        <TranslateTransform/>
                    </TransformGroup>
                </DockPanel.RenderTransform>
                <Grid x:Name="grid1" Height="40" DockPanel.Dock="Top" Background="Red">
                    <Button x:Name="button" HorizontalAlignment="Right" Content="ccc"/>
                </Grid>
                <Grid x:Name="grid" Height="40"    VerticalAlignment="Top" DockPanel.Dock="Top" Background="Green" RenderTransformOrigin="0.5,0.5">
                </Grid>
            </DockPanel>
  • 相关阅读:
    JavaScript---动态加载script和style样式
    百度地图API----搜索地址,获取该点的位置坐标并转换成WebMercator
    ArcGIS api for JavaScript 3.27 FindTask查询功能
    Dojo.declare使用方法详解
    ArcGIS Desktop中为图像设置成不显示背景色
    网页导航条定位
    css3+JS实现幻灯片轮播图
    简单json---转树形json
    js中回调函数写法
    pom.xml文件报MavenArchiver错误 org.apache.maven.archiver.MavenArchiver.getManifest(org.apache.maven.project.MavenProject, org.apache.maven.archiver.MavenArchiveConfiguration)
  • 原文地址:https://www.cnblogs.com/T-ARF/p/11755937.html
Copyright © 2011-2022 走看看