在创建Windows Phone 7应用程序时,我在Visual Studio 2010中遇到了一种奇怪的行为。一段时间后VS开始抱怨无效的XAML,虽然没有问题,应用程序编译并运行得很好。
它让我感到烦恼,因为我不能使用视觉设计器说“Exception被抛到”DataTemplate“:无效的XML”并且代码中有一个DataTemplate。数据模板总是正常的,VS在复制粘贴到另一个项目时不会抱怨它。
我发现有问题的通常是使用自定义转换器的DataTemplates,或者使用像PhonePerformance这样的类。
有时错误是“抛出异常是由于文档错误:无效的XML”,甚至在XAML文件中都没有突出显示。
我尝试重新安装.NET。 Visual Studio等,问题出现在两台独立的机器上,所以我认为它不是特定于我的配置。它可能特定于我的代码。
任何人都有类似的行为吗?
答案 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)
朋友找到了解决方案,你不会相信问题所在。如果装配件名称中有空格,则会发生这种情况。我发现在所有有问题的项目中我确实在程序集名称中有一个空格,重命名了程序集,设计师再次工作。