ビジネス エンティティのさまざまな状態に静的リソースを設定しようとしています。値コンバーターを使用してビジネスエンティティを取得し、アルゴリズムに応じて対応する背景ブラシを返すことができるという考えです。リソースを静的にして、デザイナーで設計し、手動で切り替えて、開発中にどのように見えるかをプレビューしながら、プログラムで使用できるようにしたいと考えています。
目的は、これらの線に沿って何かを持つことです:
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
var data = value as DummyData;
if (data == null)
return null;
//Find resources
if (data.VarianceAmount >= 0)
return StaticResources.HighBackground;
else
return StaticResources.LowBackground;
}
静的リソースが階層内のページ/コントロール/フレームワーク要素で宣言されている場合、値コンバーター内からどのようにアクセスしますか? 値コンバーターを DependencyObject に設定しましたが、そこから階層をナビゲートする方法がわかりません。