私はResourceDictionaryで2つのブラシを宣言しており、ユーザーはメインウィンドウでどのバックグラウンドを表示するかを選択したいと考えています。WPFウィンドウの背景をリソースディクショナリブラシに設定するユーザー設定
リソース辞書ブラシ:
x:Key="LightBlueMainWindow"
x:Key="DarkBlueMainWindow"
ウィンドウ:
Background="{DynamicResource LightBlueMainWindow}">
私は文字列で、キー(LightBlueMainWindowまたはDarkBlueMainWindowのいずれかを含めることができます定義された 'MainBackground' を設定し、プロジェクトのユーザーを持っています)。
XAMLのユーザー設定に基づいて背景を動的に設定する最適な方法は何ですか?私はアプリケーション全体でさまざまなユーザーコントロールや窓からこのブラシにアクセスする必要があることを言及する必要があり
EDIT
。私はこのブラシを設定したいすべての場所にプロパティを設定したくありません。
また、ブラシは、事前に定義されており、代わりにDynamicResourceを使用して、この
<LinearGradientBrush x:Key="LightBlueMainWindow" EndPoint="0.5,1"
MappingMode="RelativeToBoundingBox" StartPoint="0.5,0">
<LinearGradientBrush.GradientStops>
<GradientStopCollection>
<GradientStop Color="#FFE9EFF3" />
<GradientStop Color="#FF84A1B8" Offset="1"/>
</GradientStopCollection>
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
私はあなたの質問を誤解しているかもしれませんが、これを一度だけ指定したいのですか?アプリケーションのすべてのWindowsとUserControlに設定する必要がありますか?私はあなたがバックグラウンドのリソースキーとしてMainBackground文字列を指定できるようにしたいと思ったのを理解しました。 –