有谁知道如何在整个 Silverlight 应用程序中设置默认字体(在本例中为颜色)?
这是一个相当大的遗留应用程序,所以我认为我不能利用主题。我已经创建了样式等,但不喜欢在整个应用程序中这样做,并且他们维护它们等等。
我没有太多 Silverlight/Xaml 经验,所以请详细说明您的答案,就像我很愚蠢一样!
谢谢
有谁知道如何在整个 Silverlight 应用程序中设置默认字体(在本例中为颜色)?
这是一个相当大的遗留应用程序,所以我认为我不能利用主题。我已经创建了样式等,但不喜欢在整个应用程序中这样做,并且他们维护它们等等。
我没有太多 Silverlight/Xaml 经验,所以请详细说明您的答案,就像我很愚蠢一样!
谢谢
如果用 a 包装整个应用程序ContentControl
并指定它的Foreground
,则所有控件都会继承Foreground
颜色。如果您的资源文件之一为您Foreground
的任何子控件指定了,则Foreground
应该向下流向所有子控件... :(
另一种解决方案是使用Silverlight 工具包主题文件中的隐式样式。您可以看到字体颜色的一个资源,并且该颜色通过隐式样式应用于每个 UI 控件。
主题.xaml
<SolidColorBrush x:Key="TextBrush" Color="#FF152937" />
...
<Style TargetType="Button">
<Setter Property="Foreground" Value="{StaticResource TextBrush}" />
因此,如果您的资源文件覆盖Foreground
属性,您必须像在Theme.xaml
工具包文件中一样更改它。创建一个独特的Foreground
画笔并在每个控件上应用隐式样式。
如果有人有更好的解决方案???