我需要根据一些配置值设置给定控件的样式
。我想要从两个可用的静态资源
中选择一个控件的样式
。我尝试着做了这样的事情:
<TextBox Style="{Binding ABC}"/>
where
public string ABC
{
get {return "{StaticResource MyStyle}";}
}
很遗憾,那样做行不通。
你有什么想法吗?
提前感谢!
干杯
我需要根据一些配置值设置给定控件的样式
。我想要从两个可用的静态资源
中选择一个控件的样式
。我尝试着做了这样的事情:
<TextBox Style="{Binding ABC}"/>
where
public string ABC
{
get {return "{StaticResource MyStyle}";}
}
很遗憾,那样做行不通。
你有什么想法吗?
提前感谢!
干杯
你很接近了。不过,你需要将 Style
属性绑定到一个 Style
类型的属性上(而不是表示静态资源查找的字符串)。
关于样式的存储,你有两个选项,这将决定属性的外观。可以将样式放在页面资源或应用程序资源中,然后你的 ABC 属性将看起来像以下之一:
// using page resources
public Style ABC
{
get { return (Style) this.Resources["_myStyle"]; }
}
// using application resources
public Style ABC
{
get { return (Style) App.Current.Resources["_myStyle"]; }
}
其中_myStyle
是资源字典中样式的x:Key
属性所拥有的值。