6

我在下面的第 6 行代码下得到了波浪线,给出了标题中所述的错误。我刚刚迁移到 VS 2012,并且在 VS 2010 中一切正常。我觉得问题可能出在其他地方……有人可以告诉我这个 xaml 是否真的有问题吗?

<Application x:Class="SageWpf.App"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:local="clr-namespace:SageWpf">
    <Application.Resources>
        <ResourceDictionary x:Key="rd">
            <ResourceDictionary.MergedDictionaries>
                <ResourceDictionary>
                    <local:AppBootStrapper x:Key="bootstrapper"/>
                    <local:EffectConverter x:Key="effectConverter"/>
                    <local:VisibilityConverter x:Key="visibilityConverter"/>
                </ResourceDictionary>
            </ResourceDictionary.MergedDictionaries>
        </ResourceDictionary>


    </Application.Resources>
</Application>
4

1 回答 1

10

<ResourceDictionary x:Key="rd">是无效的。x:Key从那里删除。

另外..这是构建资源的不好方法。将其更改为:

<Application.Resources>
    <ResourceDictionary>
        <local:AppBootStrapper x:Key="bootstrapper"/>
        <local:EffectConverter x:Key="effectConverter"/>
        <local:VisibilityConverter x:Key="visibilityConverter"/>
    </ResourceDictionary>
</Application.Resources>

如果您在另一个 XAML 文件中定义了资源并且想要在此处导入它们,则仅使用合并字典。

于 2013-02-16T06:09:03.140 回答