我正在运行Visual Studio 2012,当我向项目添加新的文件/引用时,会出现消息框,显示错误消息
设置属性"system.windows.resourcedictionary.defererablecontent"引发异常
我在MSDN上读到一篇文章,建议在visual studio命令提示符下运行命令devenv /resetuserdata
来解决这个问题,我尝试了一下,但没有成功。事实上,命令提示符显示了Unknown Error
消息。
一些插件导致了这个问题,所以无论何时发生,都必须解决它:
在Vis工作室-
工具>选项>环境>加载项安全,取消选中"允许加载加载加载项组件",确定
重新启动可视演播室
错误不应该再发生了,所以返回
"工具">"选项">"环境">"外接程序安全性",然后重新检查"允许加载外接程序组件",确定
具体地说,我在尝试将文件添加到项目和管理Nuget包时遇到了这个错误。
更新
我现在要打开一个要点"工具>Nuget包管理器>管理解决方案的Nuget包"每当我打开Vis studio的新实例时,在加载解决方案之前,只是为了确保窗口正确加载
这样我就知道我不会有这个问题。
在我的例子中,它是一种在ResourceDictionary(WPF)中定义了两次相同键的样式
我有适用于Microsoft VisulStudio 2013-v2.2的Windows azure工具和适用于Microsoft lightswitch VisulStudio 2013-v2.2的Windows azure工具
我只卸载microsoftlightswitchvs2013的Windowsazure工具。
它运行良好。。。
我修复了它。解决方案是删除我实际没有使用的Windows Azure Tools for Visual Studio 2012
,错误立即消失。
在我的案例中,它首先是在安全模式下启动Visual Studio。你可以为visualstudio创建一个快捷方式,目标如下:
'"F:\Program Files\Visual Studio\VS2013\Common7\IDE\devenv.exe"-safemode'
在安全模式下启动后,您可以通过Addin Manager
删除有问题的扩展。然而,这对某些扩展不起作用,因为在安全模式下运行时,某些扩展的卸载选项可能会被禁用,特别是如果您已经在同一会话中卸载了另一个扩展。
在我的案例中,问题是由Paradox游戏引擎引起的,在该引擎中,我通过"程序和功能"卸载了它,但作为回报,它没有删除最初通过Nuget软件包安装的扩展。通过"程序和功能"卸载Paradox后,扩展本身仍在Visual Studio中注册,可能会导致隐藏的NullReferenceException
。
此问题可能是由任何可能存在错误的扩展或未正确卸载的扩展引起的。
另外,请参阅本文。。。
上述问题只需重新启动Visual Studio即可解决P
似乎也可以通过关闭项目和vis studio实例,重新打开,然后当开始页面/打开项目屏幕出现时,选择Tools > Extensions and Updates...
,然后按Close
来解决这个问题
现在打开项目,在尝试添加文件或管理nuget包时不会出现错误,这很奇怪。
只是讨厌你必须记住每次打开扩展和更新。。。
其他方式确保给定的Resourcedictionary.xaml
路径是否正确
我不得不从"控制"面板中的"添加/删除程序"中删除Xamarin,然后重新启动Visual studio来修复此问题。
我在VS 2015中的Devexpress项目中遇到了这个问题最终对我起作用的是。关闭我的解决方案,关闭Visual Studio,打开Visual Studio,创建一个新的虚拟项目,向其中添加一个表单,关闭并保存新项目,重新打开原始项目,一切正常。
适用于使用windows phone8 sdk在silverlight sdk环境中工作的其他人。
sliverlight的版本与visual studio版本兼容-
vs2012-sliverlight sdk 4
vs2013-silverlight sdk 5
我在vs2013中进行集成,当我用silverlight sdk 5更新它时,错误就消失了。
在我的例子中是行尾:你可以有不同的格式,通过复制粘贴一些代码,一个文件得到不同的行尾。只需File > Save As
,然后单击保存按钮旁边的小箭头即可。
然后单击保存编码并选择您在所有其他文件中使用的编码。
请参阅Andrew Truckle的回答。
我希望这能帮助