12

Windows 8 コンシューマー プレビューでは、選択したタイルやアプリ バーなどの背景としても使用される「背景色」の設定など、エクスペリエンスをパーソナライズできます。したがって、オレンジ色を選択すると、Windows 8 Metro UI にオレンジ色のアクセントが表示されます。 .

現在、いくつかのカスタム コントロールを作成しています。ユーザーが色を変更すると、アプリケーションのアクセントがそれに応じて再色付けされるように、スタイリングでこの色にアクセスしたいと考えています。

XAML でこの色を取得する方法が見つかりません。参照できるシステム レベルのダイナミック ブラシまたはカラー リソースがあることを期待するのは妥当と思われます。

誰にもアイデアはありますか?

4

3 に答える 3

7

MSDNのこのスレッド (メトロ アプリの背景としてのスタート画面の背景)に基づく- これは利用できません。

MSDN スレッドが消えた場合、サイトが一時的に利用できなくなった場合、または Microsoft がディレクトリ構造を移動し、孤立したリンクをいたるところに残した場合: Microsoft 従業員のRob Kaplanからの関連する回答は、次のように述べています。

Metro スタイル アプリは、スタート画面の背景色を照会できません。

したがって、この機能が利用できないという公式の対応と解釈することができます。

于 2012-03-22T19:10:46.710 に答える
5

アラン、

複雑なグラフィックオーバーレイを計画している場合は「ブランディング」の概念が理にかなっていることに同意しますが、OSが提供する静的テーマブラシを使用してWindowsPhoneで使用できる基本テーマの色を取得することをお勧めします。アプリのベースカラーテーマ。ユーザーは、目に心地よい色を見つけたため、その色を選択しました。さらに重要なのは、特定のユーザーが1つまたは複数の色を知らない場合があり、読みやすさとアクセシビリティを向上させるための最良のオプションを選択したことです。

標準の配色にアクセスできることで、明るい/暗いテーマの範囲内にとどまり、視覚障害者向けのすべてのプログラムで多くの企業が要求するアクセシビリティ基準を満たすことができます。

SDKはまだ初期段階にあり、SDKのリリースの準備ができていなかったため、この重要な機能が現在の実装から除外されている可能性があります(色が確定していないか、特定のデバイスでのテーマの互換性がまだ残っている可能性があります)開発中)。

現在のテーマカラーを取得するために値を加算/減算することにより、ProgressBarForegroundThemeBrushなどの既存のテーマブラシからテーマカラーを導出することはそれほど難しくありません。

私の提案は、オペレーティングシステムの変更に関係なく、アプリケーションが最新の状態を維持できるように、可能な限りテーマスタイルを順守することです。

私は2010年5月からWindowsPhoneプログラマーです。

于 2012-12-07T15:58:21.423 に答える
2

UxTheme.dll には、テーマの色を取得する文書化されていない API がいくつかあります。これらの関数を使用してアプリを Windows ストアに提出すると、認証に失敗します。一般的に、文書化されていない関数に依存することはお勧めできません。それでも、これらの値を取得することに興味がある人のために、プロセスについて書きました

于 2013-01-01T13:24:45.623 に答える