gpt4 book ai didi

wpf - 风格转换

转载 作者:行者123 更新时间:2023-12-04 03:20:20 25 4
gpt4 key购买 nike

我有以下代码:

  <Window.Resources>
<Style TargetType="{x:Type TextBlock}">
<Setter Property="LayoutTransform">
<Setter.Value>
<TranslateTransform />
</Setter.Value>
</Setter>
<Style.Triggers>
<EventTrigger RoutedEvent="FrameworkElement.Loaded">
<EventTrigger.Actions>
<BeginStoryboard>
<Storyboard RepeatBehavior="Forever" AutoReverse="True">
<DoubleAnimation
From="300"
To="-300"
Storyboard.TargetProperty="LayoutTransform.X"
Duration="0:0:1" />
</Storyboard>
</BeginStoryboard>
</EventTrigger.Actions>
</EventTrigger>
</Style.Triggers>
</Style>


<TextBlock
Grid.Column="1"
Text="This is a sample text."/>

<Rectangle Grid.Column="0" Fill="AliceBlue"/>
<Rectangle Grid.Column="2" Fill="Aquamarine"/>

基本上我想要实现的是 TextBlock 的内容应该从右向左(和向后)滚动。不知何故,这种风格什么都不做。如果我将 TranslateTransform 更改为 ScaleTransform 并将 LayoutTransform.X 更改为 LayoutTransform.ScaleX,则 TextBlock 的动画效果很好。这是 WPF 中的错误还是我遗漏了什么?

最佳答案

我在使用 RotateTransform 时遇到了同样的问题。我希望我的所有控件都具有该动画。我找到了它的解决方案,看起来它也适用于 TrasnslteTransform。

试试下面的代码:

<Window x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Window.Resources>
<Style TargetType="{x:Type TextBox}">
<Setter Property="RenderTransform">
<Setter.Value>
<TranslateTransform X="0" Y="0"/>
</Setter.Value>
</Setter>
<Style.Triggers>
<EventTrigger RoutedEvent="Loaded">
<EventTrigger.Actions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetProperty="(TextBox.RenderTransform).(TranslateTransform.X)"
From="300"
To="-300"
AutoReverse="True"
RepeatBehavior="Forever"/>
</Storyboard>
</BeginStoryboard>
</EventTrigger.Actions>
</EventTrigger>
</Style.Triggers>
</Style>
</Window.Resources>

<Grid>
<TextBox Width="200" Height="22"/>
</Grid>

我想诀窍在于您指定目标属性的方式。这段代码对我有用。

我知道问题提出已经 5 年了,但其他人可能会从答案中受益。 :)

关于wpf - 风格转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1048825/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com