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>
相关推荐
快乐非自愿3 小时前
分布式锁—Redisson的同步器组件
分布式·wpf
△曉風殘月〆8 小时前
WPF预览并打印FlowDocument
wpf
wangnaisheng8 小时前
【WPF】Slider滑动方法(INotifyPropertyChanged、ValueChanged )响应速度对比分析
c#·wpf
蒋劲豪8 小时前
WPF有哪些使用率高的框架
c#·wpf
wangnaisheng8 小时前
【WPF】在System.Drawing.Rectangle中限制鼠标保持在Rectangle中移动?
c#·wpf
中土 不易1 天前
WPF中XAML的优点
wpf
无所谓จุ๊บ2 天前
使用AI整理知识点--WPF动画核心知识
c#·wpf
xcLeigh3 天前
WPF在特定领域的应用:打造一款专业的图像编辑工具
c#·wpf
吾与谁归in3 天前
WPF给ListBox中的每一项添加右键菜单功能
c#·wpf
千里码!3 天前
RocketMQ延迟消息深度解析:原理、实践与性能调优
wpf·rocketmq