在 uwp 中使用 VisualStateManager 更改按钮前景
Changing Button Foreground using VisualStateManager in uwp
我尝试使用视觉状态管理器更改按钮前景色,但根本不起作用。
<Button x:Name="Close" HorizontalAlignment="Stretch"
Width="100" Background="#FF4F4F4F"
Height="50" BorderThickness="2" BorderBrush="#FF2F2F2F"
Content="Cancel">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="PointerOver">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="Close"
Storyboard.TargetProperty="Foreground">
<DiscreteObjectKeyFrame KeyTime="0" Value="#FFFFFFFF" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Pressed">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="Close"
Storyboard.TargetProperty="Foreground">
<DiscreteObjectKeyFrame KeyTime="0" Value="#FFFFFFFF" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
</Button>
请帮我解决这个问题。
提前致谢。
它不起作用,因为您试图为画笔类型设置颜色值。
请使用您需要的颜色创建一个 Brush StaticResource。并在动画中设置资源。
<SolidColorBrush x:Key="TextBoxErrorThemeBrush" Color="Red" />
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Foreground" Storyboard.TargetName="PART_TextBlock">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource TextBoxErrorThemeBrush}"/>
</ObjectAnimationUsingKeyFrames>
此致,
杰西
我尝试使用视觉状态管理器更改按钮前景色,但根本不起作用。
<Button x:Name="Close" HorizontalAlignment="Stretch"
Width="100" Background="#FF4F4F4F"
Height="50" BorderThickness="2" BorderBrush="#FF2F2F2F"
Content="Cancel">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="PointerOver">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="Close"
Storyboard.TargetProperty="Foreground">
<DiscreteObjectKeyFrame KeyTime="0" Value="#FFFFFFFF" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Pressed">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="Close"
Storyboard.TargetProperty="Foreground">
<DiscreteObjectKeyFrame KeyTime="0" Value="#FFFFFFFF" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
</Button>
请帮我解决这个问题。
提前致谢。
它不起作用,因为您试图为画笔类型设置颜色值。
请使用您需要的颜色创建一个 Brush StaticResource。并在动画中设置资源。
<SolidColorBrush x:Key="TextBoxErrorThemeBrush" Color="Red" />
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Foreground" Storyboard.TargetName="PART_TextBlock">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource TextBoxErrorThemeBrush}"/>
</ObjectAnimationUsingKeyFrames>
此致,
杰西