我创建了一个简单的WPF应用程序,其中只有一个窗口。我想要的是自动将背景颜色应用于所有窗口。然而,颜色并没有被应用。
以下是App中的XAML代码,这是一个示例项目。
<Application x:Class="SampleWPFApp.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:SampleWPFApp"
StartupUri="MainWindow.xaml">
<Application.Resources>
<Style TargetType="Window">
<Setter Property="Background">
<Setter.Value>
<SolidColorBrush Color="#FF3B444B" />
</Setter.Value>
</Setter>
</Style>
<Style TargetType="local:MainWindow" BasedOn="{StaticResource Window}" />
</Application.Resources>
</Application>
这段逻辑是从这里获取的。
编辑:
关于背景未设置的时间点,我说得不够清楚 - 在VS编辑器中背景是未设置的。程序运行时,背景是正常的。 Ragavan 和 mm8的解决方案确实可以工作,尽管它们是相同的,只有一个区别BasedOn="{StaticResource Window}"
让我们省略了样式的键(即窗口本身就是键)。
然而,编辑器没有显示背景,虽然在MainWindow的XAML中明确设置了样式使背景出现。