.net – 找不到类型’xxx.xxx.xxx’ 请确保装配

当我尝试打开引用不同项目中的UserControl的表单时,我搜索了堆栈并发现了类似的问题。

我得到“为了防止在加载设计器之前可能的数据丢失,必须解决以下错误:”与以下两个错误有关的消息;

找不到类型’MyNamespace.CommonUi.informationBox’。请确保引用了包含此类型的程序集。如果此类型是开发项目的一部分,请确保使用当前平台或任何cpu的设置成功构建项目。

变量’informationBox1’未声明或从未分配。

informationBox1是用户控件informationBox一个实例,它在设计器的表单上 – 它只是被引用为;

朋友WithEvents informationBox1作为MyNamespace.CommonUi.informationBox

“MyNamespace.CommonUi”项目构建成功。

我在项目中获得智能感知,所以我有信心正确地引用它。

到目前为止,和其他人一样…

这是一个从VS2005中的.NET2 / x86迁移到VS2012中的.NET4 / x64的项目。

现在当解决方案运行在64位以下,它不工作,我得到这个设计师的错误。但是,如果我将其切换到32位(技术上非常适合任何cpu),我可以打开设计器。

WTF?

我已经阅读了类似主题的其他建议,但他们没有看到提供任何解决方案(我甚至已经走到“向左移动并获得重建”选项)

任何建议将非常感谢。

谢谢
安迪

我相信Visual Studio本身是32位的问题,并且不能对64位的某些组件进行GUI编辑(例如ListView)。
例如。在我有ListView的表单上,我需要将解决方案更改为32位以编辑GUI。

所以答案简而言之,当你面对这个问题时:

>将解决方案更改为32位
>清理并重建解决方
>打开GUI进行编辑
>保存,将解决方案更改回64位
>清洁和重建
>运行在64位

有关详细信息,请参阅此问题。

VS 2010 designer error ‘Could not find type XYZ’ in Windows7. Works fine in XP

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...