1

这可能是一个非常愚蠢的问题,但我现在根本无法理解这个问题。

我有一个定义应用程序级资源的 App.xaml 文件:

<Application x:Class="WpfMPManager.App"
         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"             
         StartupUri="MainWindow.xaml">
<Application.Resources>
    <ResourceDictionary>
        <ResourceDictionary.MergedDictionaries>
            <ResourceDictionary Source="MyDictionnary.xaml"/>                   
    </ResourceDictionary>
</Application.Resources>

由于各种原因,我通过这样的 .cs 文件启动此应用程序(实际上,此文件中还有很多内容)。

   [STAThread]
    static void Main(params string[] args)
    {
        App myApp = new App();
        MainWindow myWindow = new MainWindow();
        myApp.Run(myWindow);
     }

但是,当我以这种方式启动应用程序时,我的应用程序资源字典是空的(如果我通过 App.xml 启动应用程序,它们确实会被填满)。

我应该调用 Application 对象上的特定方法来强制它加载 .xaml 文件中定义的资源字典吗?

提前致谢。

4

1 回答 1

2

回答我自己的问题,以防有人偶然发现

似乎调用myApp.InitializeComponent()默认构造函数未调用的就足够了。本来可以更快地想出来的。

于 2012-09-05T13:58:58.653 回答