我是WPF的新手。我想做这样的事情: 我在应用程序中有多个对话框。我创建了一个主题,其中包含我想要的所有对话框所需的背景,标题栏和关闭按钮。然而,所有对话框的大小和对它们的控制都会有所不同。 例如:DialogWindow是我为Window控件创建的主题。
在MainWindow上(我应用这个DialogTheme),我可以看到这个主题。 但是当我尝试在其上添加控件时,它们不会显示在主题上。
<Window x:Class="Example.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Height="391" Width="616"
Style="{DynamicResource DialogWindow}">
<Window.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Themes/DialogsTheme.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Window.Resources>
</Window>
我不确定,出了什么问题。任何帮助将不胜感激。
答案 0 :(得分:0)
您需要将这些行添加到您创建的每个窗口以获得样式...
<Window...Style="{DynamicResource DialogWindow}">
<Window.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Themes/DialogsTheme.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Window.Resources>
答案 1 :(得分:0)
最后得到了答案,ContentPresenter是一个必需的东西,它作为窗口主题的客户区。
<ContentPresenter Grid.Row="1" Grid.ColumnSpan="2" x:Name="ClientArea" />