gpt4 book ai didi

visual-studio-2010 - 工厂从哪里来?

转载 作者:行者123 更新时间:2023-12-04 19:14:02 27 4
gpt4 key购买 nike

我正在尝试将项目添加到拆分按钮和画廊。问题出在工厂。在下面的 OfficeRibbon 代码文件中,工厂是未知的。它在插件代码文件中也是未知的。我在某处缺少引用。我也试过 Globals.Factory 仍然未知。

RibbonButton rc = this.Factory.CreateRibbonButton(); 

我有以下 using 语句。
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Globalization;
using System.IO;
using System.Text.RegularExpressions;
using System.Threading;
using System.Windows.Forms;
using Microsoft.Office.Interop.Excel;
using Microsoft.Office.Tools.Ribbon;
//using Microsoft.Office.Tools.Excel.Extensions;

此代码在我的项目中已重命名为 ReqCommon.cs 的 ThisAddin.cs 中也失败。

我期望的最终目标是向这两个控件动态添加项目。我在这里和其他地方找到的例子似乎都基于这个难以捉摸的工厂。

该项目确实引用了 Microsoft.Office.Tools.Common.v9.0.dll

最佳答案

如果您使用的是 Ribbon Designer - 它会自动创建这个 工厂为您( Globals.Factory.GetRibbonFactory()) - 否则您需要创建自己的 工厂来自 overriding CreateRibbonExtensibilityObject() ThisAddin.cs (您的 ReqCommon.cs)

protected override Microsoft.Office.Core.IRibbonExtensibility CreateRibbonExtensibilityObject()
{
Ribbon1 tempRibbon = new Ribbon1();
tempRibbon.tab1.ControlId.ControlIdType = Microsoft.Office.Tools.Ribbon.RibbonControlIdType.Office;
tempRibbon.tab1.ControlId.OfficeId = "TabHome";
return Globals.Factory.GetRibbonFactory().CreateRibbonManager(new Microsoft.Office.Tools.Ribbon.IRibbonExtension[] { tempRibbon });
}

丝带设计师 继承自 Ribbon.RibbonBase 其中包含属性 RibbonBase.Factory 启用 this.Factory在其中使用。

关于visual-studio-2010 - 工厂从哪里来?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11996976/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com