如何解决这个错误,“基类'Microsoft.Office.Tools.Ribbon.RibbonCollectionBase'无法设计”

时间:2011-08-11 02:11:46

标签: visual-studio-2010 excel ribbon excel-addins

每当我尝试在Excel 2010插件项目中添加新功能区时,都会收到以下警告消息

  

无法为此文件显示设计器,因为没有   可以设计其中的类。设计师视察了   以下课程中的课程:

     

Ribbon2 ---无法设计基类“System.Object”。     ThisRibbonCollection ---基类

     

'Microsoft.Office.Tools.Ribbon.RibbonCollectionBase'不能   设计的。

另外,如果我们在Ribbon1.Designer.cs中查看代码,则错误指向此行:

base.Dispose(disposing);

我不知道那里出了什么问题。我在这里缺少任何其他Office程序集吗?

(在我的项目中,我有Microsoft.Office.CoreMicrosoft.Office.Interop.ExcelMicrosoft.Office.ToolsMicrosoft.Office.Tools.CommonMicrosoft.Office.Tools.ExcelMicrosoft.Office.Tools.Common.v4.0.Utilities,{{1} })

有人可以帮忙吗?谢谢。

3 个答案:

答案 0 :(得分:3)

我也碰到了这个。我发现是因为我在创建功能区菜单之前将Addin项目的目标框架更改为完整框架。

一旦我将目标更改回客户端配置文件,我就能够创建功能区,然后我将其切换回完整的框架(这对我们正在做的事情是必要的)并且一切都很顺利。

答案 1 :(得分:0)

嗯,除非我们遵循添加项目的某个顺序,否则看起来VS2010会有点古怪。无论如何,我做的是我必须重新创建一个新的空白解决方案,首先添加Excel Addin项目,添加Ribbons,然后添加我的类库项目以完成整个项目导入。它现在工作正常。

如果我们先添加类库,仍然不确定为什么会抛出错误。我想也许它可能与访问程序集有关。

答案 2 :(得分:0)

这可能听起来很奇怪但对我有用。 我尝试在VS2012中打开一个表单(使用TFS进行源代码控制)的UI设计器,但它会出错:“基类system.object无法设计”。我有一个基类FormCommon,在检查文件后我用默认的Form替换了。然后干净的构建,显然失败了。我取消了退房并打开UI设计师,它工作得很好。 我不确定这个问题的根本原因是什么。