2016-06-14 7 views
0

ビジュアルステートマネージャを使用してボタンのフォアグラウンドカラーを変更しようとしましたが、全く機能しません。uwpでVisualStateManagerを使用してボタンフォアグラウンドを変更

<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

ブラシタイプのカラー値を設定しようとしていたため、機能しません。

必要な色を使用してブラシスタティックリソースを作成してください。アニメーションでリソースを設定します。

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

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

よろしく、

ジェシー

関連する問題