System.Windows.Markup.XamlParseException:““设置属性“System.Windows.ResourceDictionary.DeferrableContent”

导致这个异常的原因是Style的Name属性导致的,需更改为Key

在这里插入图片描述

需要将Name更改为Key
在这里插入图片描述

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
                    xmlns:local="clr-namespace:WpfApp1.style">
    <Style x:Name="GridStyleOne" TargetType="{x:Type Grid}">
        <Style.Setters>
            <Setter Property="Background" Value="AliceBlue"></Setter>
        </Style.Setters>
    </Style>
    <Style x:Name="GridStyleTwo" TargetType="{x:Type Grid}">
        <Style.Setters>
            <Setter Property="Background" Value="AntiqueWhite"></Setter>
        </Style.Setters>
    </Style>
    <Style x:Name="GridStyleThree" TargetType="{x:Type Grid}">
        <Style.Setters>
            <Setter Property="Background" Value="Aqua"></Setter>
        </Style.Setters>
    </Style>
    <Style x:Name="GridStyleFour" TargetType="{x:Type Grid}">
        <Style.Setters>
            <Setter Property="Background" Value="Aquamarine"></Setter>
        </Style.Setters>
    </Style>
</ResourceDictionary>

参考链接
设置属性“System.Windows.ResourceDictionary.DeferrableContent”时引发了异常

WPF学习笔记——在“System.Windows.StaticResourceExtension”上提供值时引发了异常

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
### 回答1: 这个异常通常是由于XAML文件中的根元素的类型与代码中的类型不匹配引起的。请确保XAML文件中的根元素的类型与对应的代码文件中的类型一致。如果您使用的是自定义控件,请确保命名空间、类名和XAML文件中的名称都正确。您还可以检查XAML文件是否正确地加载到应用程序中。如果上述方法都无效,您可以尝试在代码中手动加载XAML文件,并检查是否存在其他错误。 ### 回答2: System.Windows.Markup.XamlParseExceptionWPF应用程序中常见的异常之一,通常发生在XAML解析过程中。该异常表明在XAML文件中指定的类名称与实际的根实例类型不匹配。 当WPF应用程序加载XAML文件时,系统会尝试根据XAML文件中的类名称创建对应的实例,并将其作为应用程序的根实例。如果XAML文件中指定的类名称与实际的根实例类型不匹配,就会引发XamlParseException异常。 解决这个问题的方法有以下几种: 1. 检查XAML文件中的类名称是否与实际的根实例类型一致。确保类名称的拼写和大小写与实际的类型完全匹配。 2. 检查XAML文件中的命名空间是否正确。确保XAML文件中引用的命名空间与实际的根实例所在的命名空间一致。 3. 检查XAML文件中是否存在其他与根实例相关的错误。例如,如果根实例的构造函数参数有误,也可能导致该异常的发生。 如果以上方法都没有解决问题,可以尝试重新生成或清理解决方案,以确保生成的二进制文件与XAML文件匹配。 总而言之,System.Windows.Markup.XamlParseException异常的原因是XAML文件中指定的类名称与实际的根实例类型不匹配。解决这个问题的方法是检查类名称、命名空间和其他与根实例相关的错误,并确保重新生成或清理解决方案。 ### 回答3: System.Windows.Markup.XamlParseExceptionWPF程序中常见的一种异常,通常在解析XAML文件时出现。 当出现这个异常时,它通常表示XAML文件中指定的类名称与实际根实例类型不匹配。这可能是因为XAML文件中指定的类名称与实际代码中的类名称不一致,或者XAML文件中存在错误的命名空间。 要解决这个问题,我们可以按照以下步骤进行排查和修复: 1. 首先,检查XAML文件中指定的类名称是否与实际代码中的类名称一致。确保在XAML文件中指定的类名称正确无误。 2. 检查XAML文件中的命名空间是否正确。确保XAML文件中的命名空间与实际代码中的命名空间一致。 3. 确保XAML文件中的根元素类型与实际代码中的根元素类型一致。如果XAML文件中的根元素使用了自定义类,那么确保该类的名称和命名空间都正确无误。 4. 检查XAML文件的语法错误。语法错误可能导致解析失败,进而抛出XamlParseException异常。确保XAML文件中的语法正确无误。 5. 如果上述步骤都没有解决问题,可以尝试重新生成项目,以确保XAML文件和实际代码之间的一致性。 总之,System.Windows.Markup.XamlParseException异常通常表示XAML文件中指定的类名称与实际根实例类型不匹配。我们需要仔细检查XAML文件中的类名称、命名空间和语法错误,以确定并解决问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值