2016-06-14 2 views
0

Я пытаюсь изменить цвет фона переднего плана, используя визуальный диспетчер sate, который не работает вообще.Изменение кнопки на переднем плане с помощью VisualStateManager в 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> 

, пожалуйста, помогите мне в этом.

Заранее спасибо.

+1

Это работает, если вы делаете это в шаблоне управления вместо этого? – Gui

ответ

1

Он не работает, потому что вы пытались установить значение цвета для типа кисти.

Пожалуйста, создайте StaticResource Brush, используя необходимый цвет. И установите ресурс в анимации.

<SolidColorBrush x:Key="TextBoxErrorThemeBrush" Color="Red" /> 

<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Foreground" Storyboard.TargetName="PART_TextBlock"> 
    <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource TextBoxErrorThemeBrush}"/> 
</ObjectAnimationUsingKeyFrames> 

С уважением,

Jessie