我需要根据Silverlight中的某些配置值设置给定控件的Style.我想有可能从两种可用的样式(静态资源)中选择一个控件样式.我试图做一些像:
<TextBox Style="{Binding ABC}"/>
哪里
public string ABC
{
get {return "{StaticResource MyStyle}";}
}
不幸的是,这不起作用.
你有什么想法?
提前致谢!
干杯
解决方法:
你很亲密您需要将Style属性绑定到Style类型的属性(不是表示静态资源查找的字符串).
您有两种存储样式的选项,这将决定该属性的外观.将样式放在页面资源或App资源中,然后您的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属性的值.