WindowsPhone8.1(WinRT)でButtonの状態がPressedの時、背景色を変える

Windows Phone 8.1ではボタンを押すとその時のアクセントカラーが背景色に付きます。

無題

これをボタンが押された時に、任意の色に変更します。

Visual Studio 2013で話を進めます。

XAMLを開いて、変更したいボタンを右クリック→テンプレートの編集→コピーして編集

無題

Styleリソースの作成ウィンドウが出るので任意の名前をつけてOK

定義先はアプリ全体で使うような変更ならアプリケーション、そのページだけで使うならPage、そのボタンだけならButtonを選択(今回はPage)

無題するとXAMLファイルにずらーーーーーっと追加されたと思います。

その中に以下のタグがあります。

 <VisualState x:Name="Pressed">
	<Storyboard>
		<PointerDownThemeAnimation Storyboard.TargetName="Grid"/>
		<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Foreground" Storyboard.TargetName="ContentPresenter">
			<DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource ButtonPressedForegroundThemeBrush}"/>
		</ObjectAnimationUsingKeyFrames>
		<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Background" Storyboard.TargetName="Border">
			<DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource ButtonPressedBackgroundThemeBrush}"/>
		</ObjectAnimationUsingKeyFrames>
	</Storyboard>
</VisualState>

ここの{ThemeResource ButtonPressedBackgroundThemeBrush}を任意の色(今回は#FFC1328E)に変更するとボタンを押した時の背景色が指定した色になる。
無題

広告

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中