我正在使用c#中的Word应用程序加载项。
我正在尝试使用DocumentBeforeClose
事件:
Microsoft.Office.Tools.Word.Document vstoDoc = Globals.Factory.GetVstoObject(this.Application.ActiveDocument);
vstoDoc.BeforeClose += new System.ComponentModel.CancelEventHandler(ThisDocument_BeforeClose);
我可以处理它,但当我尝试关闭并打开文档(而不是整个应用程序)时,我再也无法处理此事件了。
编辑:
DocumentBeforeClose很不错。
但我如何使用ref bool取消
我试试:
void Application_DocumentBeforeClose(_Word.Document Doc, ref bool Cancel)
{
Cancel = true;
}
但它的开始工作:(
答案 0 :(得分:0)
您注册的事件处理程序位于一个特定文档上。如果你关闭它,事件处理程序不会计算后续文档。
如果您不想为某个特定文档触发BeforeClose
事件,但对于任何已打开的文档,请使用Application.DocumentBeforeClose
事件。
Globals.ThisAddIn.Application.DocumentBeforeClose += Application_DocumentBeforeClose;
void Application_DocumentBeforeClose(_Word.Document Doc, ref bool Cancel)
{
// Doc is the document getting closed
}