我正在尝试为我的业务实体中的不同状态设置静态资源.我的想法是,我可以使用值转换器来获取业务实体并根据算法返回相应的背景画笔.我希望资源是静态的,所以我可以在设计器中设计它们并手动切换它们以预览开发期间的样子,但是能够以编程方式使用它们.
目标是在这些方面有所作为:
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;
}
Run Code Online (Sandbox Code Playgroud)
如果静态资源是在层次结构的页面/ control/framework元素中声明的,那么如何从值转换器中访问它?我已将我的值转换器设置为DependencyObject,但我不确定如何从那里导航层次结构.