基于Excel表更改启用/禁用function区button – VSTO

我已经写了一个VSTO Excel应用程序,我试图改变基于所选表单的button行为。 该事件实际上是在ThisWorkbook.cs类中引发的,Ribbonbutton只能在Ribbon.cs类中访问。 有没有办法启用或禁用从ThisWorkbook.cs类的function区button,而无需在ThisWorkbook.cs类中创buildfunction区的实例?

 void ThisWorkbook_SheetActivate(object Sh) { if (SomeCondition) { //Enable button } else { //Disable button } } 

您可以通过Ribbon ribon = Globals.Ribbons.Ribbon;访问functionRibbon ribon = Globals.Ribbons.Ribbon;