Visual Studio 2010一直在抱怨无效的XML,尽管没有(WP7)

时间:2012-07-19 14:57:39

标签: visual-studio-2010 windows-phone-7 xaml

在创建Windows Phone 7应用程序时,我在Visual Studio 2010中遇到了一种奇怪的行为。一段时间后VS开始抱怨无效的XA​​ML,虽然没有问题,应用程序编译并运行得很好。

它让我感到烦恼,因为我不能使用视觉设计器说“Exception被抛到”DataTemplate“:无效的XML”并且代码中有一个DataTemplate。数据模板总是正常的,VS在复制粘贴到另一个项目时不会抱怨它。

我发现有问题的通常是使用自定义转换器的DataTemplates,或者使用像PhonePerformance这样的类。

有时错误是“抛出异常是由于文档错误:无效的XML”,甚至在XAML文件中都没有突出显示。

我尝试重新安装.NET。 Visual Studio等,问题出现在两台独立的机器上,所以我认为它不是特定于我的配置。它可能特定于我的代码。

任何人都有类似的行为吗?

3 个答案:

答案 0 :(得分:1)

使用XAML时,如果引用需要进行评估但不能在设计时进行的库,则会出现此类错误。您可以关闭可视化编辑器,只需在XAML中工作 - 这将停止错误(并节省您的时间)。

答案 1 :(得分:1)

您重新安装了.NET和VisualStudio ???您应该刚刚启动第二个实例,在两个实例中打开解决方案,然后将调试器从一个连接到第二个并打开可视化编辑器。它会告诉你代码中究竟是什么导致了问题。您的转换器中也是DesignerProperties.IsInDesignMode。天啊。你浪费了这么多时间:(

至于设计时数据,这很棘手。您有不是的DesignTimeDataWithDesignTimeCreatableTypes或无法为您的真实类型创建代理的DesignData(无论出于何种原因had this issue many times deep in the past)。

解决这个问题的唯一方法是从另一个实例调试一个实例。它实际上并不那么难。我做了很多(调试WF4 ActivityDesigners)。

答案 2 :(得分:1)

朋友找到了解决方案,你不会相信问题所在。如果装配件名称中有空格,则会发生这种情况。我发现在所有有问题的项目中我确实在程序集名称中有一个空格,重命名了程序集,设计师再次工作。

此处还提到了解决方案http://forums.silverlight.net/t/115011.aspx/1