0

我是 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>

我不确定,出了什么问题。任何帮助将不胜感激。

4

2 回答 2

0

您需要将这些行添加到您创建的每个窗口以实现样式...

<Window...Style="{DynamicResource DialogWindow}">
<Window.Resources>        
    <ResourceDictionary>
        <ResourceDictionary.MergedDictionaries>
            <ResourceDictionary Source="Themes/DialogsTheme.xaml" />
        </ResourceDictionary.MergedDictionaries>
    </ResourceDictionary>
</Window.Resources>
于 2012-05-17T14:55:22.397 回答
0

终于得到了答案,ContentPresenter 是必需的,它作为窗口主题的客户区。

<ContentPresenter Grid.Row="1" Grid.ColumnSpan="2" x:Name="ClientArea" />
于 2012-08-16T17:46:35.877 回答