2

这可能使用 Xaml 吗?例如,我在分组框和工具栏内有标签。我已使用 Xaml 代码中的样式将标签的前景色设置为白色。

窗口的背景颜色为黑色,因此组框也具有此背景。但是,工具栏的背景颜色是 System.Media.Colors.Control (或默认情况下的任何颜色),我想保持这种状态。问题是白色不是几乎白色(工具栏)上的最佳颜色。

是否可以根据容器的内容将标签的前景色设置为不同?而且只在一个地方 - 在我的情况下,在主窗口的 Window.Resources 标记内。

像这样的东西:

<Style TargetType="Label">
    <Setter Property="Background">
        <Setter.Value>
            <SolidColorBrush Color="White"/>
        </Setter.Value>
    </Setter>
</Style>

<Style TargetType="ToolBar.Label">
    <Setter Property="Background">
        <Setter.Value>
            <SolidColorBrush Color="Black"/>
        </Setter.Value>
    </Setter>
</Style>

谢谢,

J。

4

1 回答 1

0

您可以使用控件定义资源,例如

<ToolBar>
        <ToolBar.Resources>
            <Style TargetType="Label">
                <Setter Property="Background">
                    <Setter.Value>
                        <SolidColorBrush Color="White"/>
                    </Setter.Value>
                </Setter>
            </Style>
        </ToolBar.Resources>
    </ToolBar>

然后工具栏中的标签将选择本地资源。

于 2012-11-23T08:59:07.403 回答