WP81创建XAML样式以定位应用程序中的所有页面

时间:2016-02-09 21:49:32

标签: xaml windows-phone-8.1 winrt-xaml targettype

我想通过声明一个定位页面的样式,为我的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>

我是否可以不针对默认(隐式)样式定位页面?

2 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

为什么不在应用程序资源中覆盖画笔

<SolidColorBrush x:Name="ApplicationPageBackgroundThemeBrush" Color="RED"/>