【发布时间】:2014-05-21 12:56:17
【问题描述】:
我在 WPF 中有一个标准 XAML 样式的窗口(
在这个窗口中我插入一个资源字典
<Window.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Style/Global.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Window.Resources>
在 Global.xaml 字典中,我有以下代码:
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Style TargetType="Window">
<Setter Property="Background" Value="Red"/>
</Style>
</ResourceDictionary>
任何地方都没有异常。除了它不起作用之外,当我编译并运行该应用程序时,窗口背景显示为默认白色。但是在 Visual Studio 的设计器选项卡中,您可以看到窗口的预览,背景颜色正确更改为红色。我不明白。 我没有在任何可能覆盖窗口背景颜色的地方插入任何其他样式。 那么它怎么可能在预览选项卡中正常工作,但是当我实际运行该应用程序时,它却没有?我在这里做错了什么?
这是整个窗口的代码:
<Window x:Class="Apptest.EditBook"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="EditBook" Height="300" Width="300">
<Window.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Style/Global.xaml" />
<ResourceDictionary Source="Style/Controls.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Window.Resources>
<Grid>
</Grid>
</Window>
【问题讨论】:
-
请发布窗口的 XAML。
-
好的,我发布了整个代码,但它是一个没有内容的空测试窗口,所以没有什么可以破坏我认为的任何东西
-
并且只是为了完整......控制字典中有什么?
-
只是一些按钮样式。但这不是导致它的原因,因为我试图完全删除它的链接,但它仍然没有工作。
-
只是为了检查......您的 app.xaml StartUpUri 属性是否仍设置为 MainWindow.xaml?