将MergedDictionary添加到Application.Resources WPF时出错

Roc*_*igh 4 wpf mvvm mvvm-light

我正在使用MVVM灯创建一个"快速"WPF应用程序来测试一些Web服务.我有整个app runiing但需要将我的ResourceDictionary添加到应用程序资源.当我将以下内容添加到App.xaml时:

    <ResourceDictionary>
        <ResourceDictionary.MergedDictionaries>
            <ResourceDictionary Source="Resources/ResourceDictionary.xaml" />
        </ResourceDictionary.MergedDictionaries>
    </ResourceDictionary>
</Application.Resources>
Run Code Online (Sandbox Code Playgroud)

我收到错误:

错误4程序''不包含适用于入口点的静态'Main'方法

我可以在此错误上找到的所有帮助都与设置为ApplicationDefinition的Build Action有关,这不是问题所在.

任何帮助或指导将不胜感激.

TIA!

Tom*_*iło 10

App.xaml学习MVVM Light Toolkit 时,在向资源添加任何内容时,我遇到了同样的错误.问题是由于错误的字典声明引起的<Application.Resources>,与MVVM Light Toolkit无关.

应用程序的资源字典应该类似于:

<Application ...>

    <Application.Resources>
        <ResourceDictionary>
            <!-- Global ViewModelLocator -->
            <vm:ViewModelLocator x:Key="Locator"
                                 d:IsDataSource="True" />

            <ResourceDictionary.MergedDictionaries>
                <!-- Global style -->
                <ResourceDictionary Source="Skin1.xaml" />
                <ResourceDictionary Source="Skin2.xaml" />
                <ResourceDictionary Source="Templates1.xaml" />
                <ResourceDictionary Source="Templates2.xaml" />
            </ResourceDictionary.MergedDictionaries>
        </ResourceDictionary>
    </Application.Resources>

</Application>
Run Code Online (Sandbox Code Playgroud)

通过这种方式,您可以Locator在同一位置使用旧密钥获取工作的全局资源字典,并在列出的文件中声明新字典.

正在加载的文件如下:

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">

    <Style TargetType="{x:Type Button}">
        <Setter Property="Height" Value="28" />
        <Setter Property="Padding" Value="12,3" />
    </Style>

    ...

</ResourceDictionary>
Run Code Online (Sandbox Code Playgroud)