[ad_1]
嗨伙计。
我尝试在 MouseEnter 和 MouseLeave 期间为 ToggleButton 设置动画。
当我直接使用颜色代码时,下面的代码有效。
但如果我将它引用到资源,它就不起作用并给我带来异常。
抛出异常:
System.Windows.Markup.XamlParseException:“设置属性‘System.Windows.Media.Animation.ColorAnimation.From’引发异常。” 行号“137”和行位置“46”。
内部异常:ArgumentException:“#FF2E353F”不是属性“From”的有效值。
请帮忙吗?
我尝试过的:
这很好用。
XML
<BeginStoryboard x:Name="BeginStoryboardNameR"> <Storyboard> <ColorAnimation From="#015CBF" To="#007AFF" Storyboard.TargetName="templateRoot" Storyboard.TargetProperty="(Control.Background).(SolidColorBrush.Color)" FillBehavior="HoldEnd" Duration="0:0:.2"/> </Storyboard> </BeginStoryboard>
这段代码不起作用并给了我例外。
XML
<SolidColorBrush x:Key="MyBox.TButton.Bg" Color="#FF2E353F"/> <BeginStoryboard x:Name="BeginStoryboardNameR"> <Storyboard> <ColorAnimation From="{StaticResource MyBox.TButton.Bg}" To="#007AFF" Storyboard.TargetName="templateRoot" Storyboard.TargetProperty="(Control.Background).(SolidColorBrush.Color)" FillBehavior="HoldEnd" Duration="0:0:.2"/> </Storyboard> </BeginStoryboard>
解决方案1
您的资源是 SolidColorBrush,而不是 Color,这正是 From 所期望的。
我认为你的资源应该是:
XAML
<Color x:Key="MyBox.TButton.Bg">#FF2E353F</Color>
[ad_2]
コメント