C# 尝试从Winforms打开WPF窗口时发生XamlParseException

C# 尝试从Winforms打开WPF窗口时发生XamlParseException,c#,wpf,winforms,C#,Wpf,Winforms,我在一个解决方案中有一个Winforms项目和多个WPF项目。在Winform应用程序中,我想打开一个WPF窗口(如果有必要的话,它是Mahapps的MetroWindow) 在查看了被接受的答案后,我最终得到了以下代码: OpenWPFAppButton_Click(object sender, EventArgs e) { WPFApp wpfApp = new WPFApp(); ElementHost.EnableModelessKeyboardInterop(wpfAp

我在一个解决方案中有一个Winforms项目和多个WPF项目。在Winform应用程序中,我想打开一个WPF窗口(如果有必要的话,它是Mahapps的MetroWindow)

在查看了被接受的答案后,我最终得到了以下代码:

OpenWPFAppButton_Click(object sender, EventArgs e)
{
    WPFApp wpfApp = new WPFApp();
    ElementHost.EnableModelessKeyboardInterop(wpfApp);
    wpfApp.Show();
}
不幸的是,如果单击该按钮,会出现XamlParseException,它指向WPFApp.xaml(主xaml文件)中的第一行
Style=“{StaticResource…}”

这是否意味着我无法从包含静态资源的Winforms打开WPF窗口?还是我遗漏了一些简单的东西

编辑:以下是App.xaml文件的内容:

<Application x:Class="WPFAppProjectName.App"
         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
         xmlns:system="clr-namespace:System;assembly=mscorlib"
         StartupUri="WPFApp.xaml">
<Application.Resources>
    <ResourceDictionary>

        <ResourceDictionary.MergedDictionaries>
            <ResourceDictionary Source="pack://application:,,,/Selen.Wpf.SystemStyles;component/ButtonStyles.xaml"/>
            <ResourceDictionary Source="pack://application:,,,/Selen.Wpf.SystemStyles;component/MenuStyles.xaml"/>
            <ResourceDictionary Source="pack://application:,,,/Selen.Wpf.SystemStyles;component/TextBoxStyles.xaml"/>
        </ResourceDictionary.MergedDictionaries>

    </ResourceDictionary>
</Application.Resources>


很可能在
App.xaml
中定义了一些公共资源。在Windows窗体中运行时未加载该文件,因此这些资源不可用。因此,您会得到这个错误


您可以在
窗口.xaml文件中包含资源定义,也可以在每个窗口中包含自己的通用样式资源文件(也称为资源字典)。

谢谢您的帮助!我已将App.xaml代码添加到我的问题中。在那里你可以看到一些资源包的链接。请告诉我,如何将这些直接包含在我的Window.xaml文件中?这可能吗?当然。在
Application.Resources
之间复制整个代码,并将其复制到
窗口中。将
应用程序
重命名为
窗口
。当我在
应用程序.资源
之间复制代码时,没有
应用程序
可重命名,或者您指的是包括
应用程序.资源
标记在内的所有内容吗?