如何捕获托管我的vb.net类库工具的应用程序的应用程序关闭事件?

时间:2012-04-30 19:04:29

标签: vb.net arcobjects arcmap

我有一组工具,我已经构建为在主应用程序(ESRI的ArcMap)中托管/引用的类库。我想管理一个用户可能会在主应用程序上拉出未保存/未管理编辑待处理的情况的情况。我尝试处理Application.ThreadExit事件没有成功。是否有最佳实践来访问.Net中托管应用程序的关闭?这甚至可能吗?

2 个答案:

答案 0 :(得分:1)

ArcMap中当前打开的文档有一个事件处理程序。看看这里:

http://help.arcgis.com/en/sdk/10.0/arcobjects_net/componenthelp/index.html#/BeforeCloseDocument_Event/000v000000pn000000/

您可以收听BeforeCloseDocument_Event并开发一些逻辑来处理结束文档的情况(文档在应用程序关闭时关闭)。

答案 1 :(得分:0)

由于典型的WinForms应用程序在主窗体关闭之前不会关闭,因此您可以让类库处理宿主应用程序的主窗体FormClosing事件。要阻止应用程序关闭,可以将FormClosingEventArgs对象的“Cancel”属性设置为true。