我有一个具有许多功能的 excel 插件。我在功能区上有一个名为“配置设置”的按钮,允许用户选择是否允许某些选项(是否包括右键单击菜单,或者在我的功能区上显示某些按钮)。
我知道定义右键菜单或设计功能区的唯一方法是启动 excel 插件。
我有一个在加载时会检查的配置文件,但如果用户使用我的功能区按钮更改配置,则在重新打开 excel 或用户手动重新加载插件之前它没有效果。有没有办法以编程方式做到这一点?
我有一个具有许多功能的 excel 插件。我在功能区上有一个名为“配置设置”的按钮,允许用户选择是否允许某些选项(是否包括右键单击菜单,或者在我的功能区上显示某些按钮)。
我知道定义右键菜单或设计功能区的唯一方法是启动 excel 插件。
我有一个在加载时会检查的配置文件,但如果用户使用我的功能区按钮更改配置,则在重新打开 excel 或用户手动重新加载插件之前它没有效果。有没有办法以编程方式做到这一点?
可能你可以有两个插件。(Addin1, Addin2)
第一个插件 (Addin1) 没有任何功能区但读取配置,然后启用另一个插件 (Addin2)。
要启用插件,请使用以下代码。
foreach (COMAddIn addin in Application.COMAddIns)
{
if (addin.ProgId.ToLower().Contains("addin2") && addin.Connect != true)
{
addin.Connect = true;
}
}
我认为您不能从同一个加载项中重新加载加载项。我自己试过了——只是卸载对我有用。
但是自定义功能区(例如名为“Ribbon1”)的按钮可以在运行时通过“全局”对象访问其属性来更改:
Globals.Ribbons.Ribbon1.myRibbonButton.Visible = false;
希望它有帮助,约尔格