我为按钮编写了一个样式。不幸的是,我遇到了一个问题:按钮的字体大小取决于一个值,我只能在视图中计算(特别是DisplayInformation
)。
理想情况下,我会做以下事情:
<Style x:key="MyStyle" BasedOn="{StaticResource SomeStyle}" TargetType="Button">
<Setter Property="FontSize" Value="{Binding ElementName=rootControl, Path=SomeProperty" />
</Style>
然后,我将简单地在视图类中提供必要的属性。但这根本不起作用(什么都不做,没有消息,没有错误)。
我该如何解决这个问题?
在Windows运行时中不支持为setter值指定绑定。(不过,WPF和Silverlight 5可能支持它)。
如果你四处搜索,有一些变通办法,但它们有点过时。请参阅此,它使用附加的属性和绑定辅助类。