4

WPFでASP.Netタイプのテーマを実装したいと思います。ユーザーはさまざまな事前定義されたテーマを選択でき、別のテーマに切り替えることができます。

これを実装するために、テーマごとに異なるリソース辞書を作成し、必要なスタイルをキーで保存してみました。キーのコレクションはすべてのテーマで同じですが、その定義はそれぞれで異なります。

クリック時にテーマを切り替えるために以下のコードを使用しています:

var theme = Application.LoadComponent(uri) as ResourceDictionary;
Application.Current.Resources.MergedDictionaries.Clear();
Application.Current.Resources.MergedDictionaries.Add(theme);

すべてのページ/ユーザーコントロール/ウィンドウで、StaticResourceを設定し、適切なキーを適用しました。別のテーマに切り替えると、UIの次のイベントの後にのみ適用されます。

変更StaticResourceをDynamicResourceに設定すると、すぐに適用されます。

これを達成するためのアイデアをStaticResourceと共有してください。

4

2 に答える 2

0

質問を見てください

WPF と MVVM - テーマを動的に変更する

以下のリンクから定義済みのテーマをダウンロードできます

http://wpf.codeplex.com/wikipage?title=WPF%20テーマ

于 2012-06-22T06:18:14.863 に答える