WPF —— 动画缩放变换

ScaleTransform:在二维x-y坐标系统内缩放对象;

在故事板中依赖的属性为RenderTransform.ScaleXRenderTransform.ScaleY,这要根据你要沿哪个轴进行缩放,X代表x轴,Y代表y轴;

key属性当我们使用静态资源访问时候-->

<!--TargetType="{x:Type Button} 直接应用于Button按钮类型的标签-->

设置Property属性 值为value

XML 复制代码
<Setter Property="HorizontalAlignment" Value="Center"></Setter>
<Setter Property="VerticalAlignment" Value="Top"></Setter>
<Setter Property="Width" Value="100"></Setter>
<Setter Property="Height" Value="100"></Setter>
<Setter Property="RenderTransformOrigin"
        Value="0.5,0.5"></Setter>
<Setter Property="Background"
        Value="Red"></Setter>

对变换的类型进行赋值

RenderTransform :渲染变换,不影响页面布局,一般使用动画效果

LayoutTransform :布局变换,导致窗体布局重新绘算,这种性能比较低,一般用于变形上面不做动画

XML 复制代码
    <Setter Property="LayoutTransform">
        <Setter.Value>
            <ScaleTransform></ScaleTransform>
        </Setter.Value>
    </Setter>

    <!--触发器-->
    <Style.Triggers>
        <EventTrigger RoutedEvent="MouseEnter">
            <BeginStoryboard>
                <Storyboard>
                    <!--x轴的缩放-->
                    <!--to = 2 倍数-->
                    <DoubleAnimation Storyboard.TargetProperty="LayoutTransform.ScaleX"
                                     To="2"
                                     Duration="0:0:2"
                                     RepeatBehavior="Forever">
                        
                    </DoubleAnimation>
                    <DoubleAnimation Storyboard.TargetProperty="LayoutTransform.ScaleY"
                                     To="2"
                                     Duration="0:0:2"
                                     RepeatBehavior="Forever">

                    </DoubleAnimation>
                </Storyboard>
            </BeginStoryboard>
        </EventTrigger>
    </Style.Triggers>
</Style>

自定义按钮 并且把动画添加到按钮的样式里面,也就是重写按钮样式

XML 复制代码
<StackPanel>

    <Button>
        hello world</Button>
    
    <Button>hello world</Button>
</StackPanel>
相关推荐
心平气和量大福大15 小时前
C#-WPF-布局-Grid
c#·wpf·visual studio
心平气和量大福大2 天前
C#-WPF-Window主窗体
开发语言·c#·wpf
FuckPatience2 天前
Telerik UI for WPF 值不能为null。参数名:key
ui·wpf
lindexi2 天前
WPF 笔迹延迟优化从硬件到软件的全链路分析
wpf
weixin_727535623 天前
双Token认证体系深度拆解:Spring Security + JWT + Redis
redis·spring·wpf
liuxiaowei33 天前
Winform+WPF双框架实战:喷涂工艺SCADA上位机从0到1搭建(附采集监控源码+车间踩坑实录)
大数据·hadoop·wpf
贺国亚4 天前
模型训练-分布式与GPU调度
分布式·wpf
不羁的木木4 天前
HarmonyOS技术精讲-Connectivity Kit:实战——多屏协同与文件快传应用
华为·wpf·harmonyos
某不知名網友5 天前
C++ 从零实现负载均衡式在线 OJ 判题系统|分布式沙箱判题实战
wpf
fogota5 天前
【AI】C# .NET8 WPF 第三方DLL引用配置(编译不丢失、不自动删除)
c#·.net·wpf·dll