如何检测和区分Office中的AddIn、Word、PowerPoint事件:
icon)
这三个应用程序都没有AfterSave、AfterAutoSave和AfterUiSave事件。
Word和Excel连DocumentClose事件都没有。
发布于 2022-10-24 19:57:20
我几乎解决了我所有的问题,我想分享我的片段。
支持AfterSave,AfterAutoSave a AfterUiSave表示我在这里找到的单词,并使用了"as is":https://theofficecontext.com/2011/05/05/word-aftersave-event/
对于Word文档,我为DocumentOpen注册如下:((Microsoft.Office.Interop.Word.DocumentEvents2_Event)document).Close += () => Document_Close(document);
变更PowerPoint我上传在这里:https://gist.github.com/VitekBed/fc2a24f67af3cf81784ba98f0bbc183f
对Excel的修改还包含WorkbookClosed的扩展(最初来自https://gist.github.com/jmangelo/301884),上传到这里:https://gist.github.com/VitekBed/a2e1582ab9500e9513b39b85c53a6e89
来自Excel ThisAddIn.cs的示例,ThisAddIn.AppInit()
WorkbookClosedMonitor wcm = new WorkbookClosedMonitor(Application);
wcm.WorkbookClosed += new EventHandler<WorkbookClosedEventArgs>(wcm_WorkbookClosed);
WordSaveHandler wsh = new WordSaveHandler(Application);
wsh.AfterAutoSaveEvent += new WordSaveHandler.AfterSaveDelegate(wsh_AfterAutoSaveEvent);
wsh.AfterSaveEvent += new WordSaveHandler.AfterSaveDelegate(wsh_AfterSaveEvent);
wsh.AfterUiSaveEvent += new WordSaveHandler.AfterSaveDelegate(wsh_AfterUiSaveEvent);唯一尚未解决的问题是AfetrUiSave for PowerPoint,但它对我来说不是重要的用例。对我来说,是关键,检测自动保存和行为不同的保存和自动保存。
https://stackoverflow.com/questions/74186171
复制相似问题