我想通过声明一个定位页面的样式,为我的Windows Phone 8.1应用程序(RT不是Silverlight)中的所有页面设置背景图像。
像这样:
<Style TargetType="Page">
<Setter Property="Background" Value="Red" />
</Style>
它似乎适用于设计师,因为我在所有页面上都看到了红色背景。但是,当我实际运行应用程序时,背景缺失(黑色,空白)而不是红色。
我的应用程序中的某些页面来自自定义类型(派生自Page),我知道TargetType不会继承。所以我为这些添加了其他样式:
<Style TargetType="local:ViewBase">
<Setter Property="Background" Value="Red" />
</Style>
同样,在设计师中我看到了红色(很奇怪,当我只针对Page时,我也看到了红色)。然而,在再次启动时,背景不是红色,而是空白(黑色)。
我可以轻松地给它一个键,或者将Background属性添加到每个页面并将其绑定到资源,但我认为Implicit样式的重点是允许我覆盖控件的每个实例...... / p>
我是否可以不针对默认(隐式)样式定位页面?
答案 0 :(得分:0)
看起来这是一个已知问题,嘘我说!我会将背景设置为资源。
答案 1 :(得分:0)
为什么不在应用程序资源中覆盖画笔
<SolidColorBrush x:Name="ApplicationPageBackgroundThemeBrush" Color="RED"/>