我知道我可以像这样在Silverlight中写一个Setter:
<Setter Property="Background" Value="{StaticResource MyBrush}" />
但是,由于其他考虑因素,我必须以下列格式编写setter:
<Setter Property="Background">
<Setter.Value>
????? static resource
</Setter.Value>
</Setter>
我见过的任何示例都将值设置为完整画笔,但我想使用现有资源,但我不知道如何编写它。它不仅仅是画笔,我在概念中遇到麻烦,试图找出正确类型的属性来尝试设置值。有小费吗?
杰夫
答案 0 :(得分:2)
由{XXX}表示的任何标记扩展名均可写为&lt; XXX&gt;。这里,{StaticResource MyBrush}实际上是创建一个StaticResourceExtension类型的对象,传递“MyBrush”作为其构造函数的唯一参数,该构造函数本身设置了对象的ResourceKey属性。使用以下方法可以达到相同的效果:
<StaticResource ResourceKey="MyBrush" />
如果您不知道属性的类型,只需在您感兴趣的属性上设置插入符号,然后按F1在Visual Studio中打开帮助,该帮助应该为您提供您正在寻找的信息。 / p>