我的WPF应用程序在Windows 7上正常运行。在XP机器上安装会在启动时出现以下错误:
框架版本:v4.0.30319
描述:过程是 由于未处理而终止 异常。
异常信息: System.Windows.Markup.XamlParseException
Stack:at System.Windows.Markup.XamlReader.RewrapException(System.Exception的, System.Xaml.IXamlLineInfo,System.Uri)
在 System.Windows.Markup.WpfXamlLoader.Load(System.Xaml.XamlReader, System.Xaml.IXamlObjectWriterFactory, Boolean,System.Object, System.Xaml.XamlObjectWriterSettings, 的System.Uri)
在 System.Windows.Markup.WpfXamlLoader.LoadBaml(System.Xaml.XamlReader, Boolean,System.Object, System.Xaml.Permissions.XamlAccessLevel, 的System.Uri)
在 System.Windows.Markup.XamlReader.LoadBaml(System.IO.Stream, System.Windows.Markup.ParserContext, System.Object,Boolean)
在 System.Windows.Application.LoadComponent(System.Object的, 的System.Uri)
在 MyApplication.App.InitializeComponent()
在MyApplication.App.Main()
我想我可能遇到了这个问题的答案中描述的问题:
XamlParseException on Windows XP
因为我在地方使用PresentationFramework.Aero。有没有办法解决这个问题,还是我必须删除Aero?这是一个痛苦,因为我正在使用一些ButtonChromes
TIA
答案 0 :(得分:6)
我在Windows XP SP3上遇到了同样的问题,对我来说,通过将PresentationFramework.Aero引用的“Copy Local”属性设置为“True”来解决问题
答案 1 :(得分:1)
在引用Aero的ResourceDictionary时,请尝试指定完整的程序集名称,而不是短程序集名称。
<ResourceDictionary Source="/PresentationFramework.Aero, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35,ProcessorArchitecture=MSIL;component/themes/aero.normalcolor.xaml" />
答案 2 :(得分:0)
我有一个视图模型抛出异常(与COM组件有关[我现在要跟踪它!])根本没有与Xaml有关。如果创建基于Xaml的组件失败,您将获得XamlParseException
- 这可能会产生误导。
答案 3 :(得分:0)
FIX:在具有自定义英语(美国)区域设置的计算机上运行WPF应用程序时,将引发XAML解析器中的异常。