0

WinRT でアプリケーション全体にカスタムの背景色を使用する方法を理解しようとしています。基本的に、背景色コードを変更するオプションをユーザーに提供したいと考えています。これの選択と保管は簡単です。私が見ていないのは、次のように設定する方法です:

A) ユーザーが色を変更するとすぐに変更されます。B) リソース ディクショナリを使用して背景色を設定する

もともと、各ベース グリッドの背景色を静的に設定した色に設定することで、各フレーム/ページの背景色を設定するだけでした。バインディングを使用して色をバインドしようとしましたが、うまくいかないようです。

そこで、背景色をリソース ディクショナリに分割して、1 つの設定をアプリに適用できるかどうかを確認しようとしましたが、それでもうまくいかないようです (コンパイルしません)。このような:

<ResourceDictionary>
    <Page.Background>
        <SolidColorBrush Color="Black"/>
    </Page.Background>
</ResourceDictionary>

ページではなくフレームにも適用しようとしましたが、それもコンパイルされていないようです。そして、まず第一に、共通のアプリの色を1つだけ設定するためにコンパイルするものを取得できないようです。

2 つ目は、機能している場合、オンザフライで ResourceDictionary を変更して新しい背景色を適用する方法です。

私はインターネットと複数のサイトを検索して例を見つけようとしましたが、これが行われている良い例はありません。

最初の、願わくば最も簡単な質問への答えは素晴らしいでしょう。背景の設定に関するヘルプは、ケーキのアイシングになります!

4

1 に答える 1

0

WinRT / XAMLにはWPFの概念がないため、これを行うのは少し難しい{DynamicResource}でしょう。したがって、リソースディクショナリをプログラムで変更したとしても(実行可能であるはずです)、何らかの方法でトリガーする必要があります。再ロードするUIツリー全体。おそらく、ルートフレーム内を前後に移動することによって(1つを使用すると仮定して)?

于 2013-02-28T21:06:09.727 に答える