活动工作簿更改时的事件
我正在写一个Excel AddIn 。 它使用function区 ,其中一些控件是启用/禁用取决于工作簿的属性。
要做到这一点,我想我应该更新活动工作簿更改function区控件的状态。
Chip Pearson的站点解释了如何在VBA中完成这个任务 , 这里解释了如何获取活动的Excel工作簿,但是我无法在我的C# AddIn中触发这个事件。
将下面的代码添加到ThisAddIn
类中 , 事件似乎在需要时升起。
void Application_ActiveWorkbookChanges(Excel.Workbook Wb) { // TODO: Active Workbook has changed. Ribbon should be updated. } private void ThisAddIn_Startup(object sender, System.EventArgs e) { this.Application.WorkbookActivate += new Excel.AppEvents_WorkbookActivateEventHandler (Application_ActiveWorkbookChanges); this.Application.WorkbookDeactivate += new Excel.AppEvents_WorkbookDeactivateEventHandler (Application_ActiveWorkbookChanges); }