每次打开地图文档时运行一个功能

时间:2014-09-28 21:23:35

标签: c# arcobjects opendocument

我正在使用C#和ArcObjects。每次打开地图文档(.mxd或任何其他类型的地图文件)时,我都需要运行一些函数。我不知道完成此操作所需的代码。

一个例子是,每次加载或打开地图文档时,都会显示一个消息框,上面写着:"地图文档已成功加载"

1 个答案:

答案 0 :(得分:0)

您需要创建一个扩展来执行此操作,并为ArcMap.Events.OpenDocument事件添加处理程序 - API Docs中有一个很好的示例,其中包含您需要的所有内容:

public class LogExtension : ESRI.ArcGIS.Desktop.AddIns.Extension
  {
    public LogExtension()
    {
    }

    protected override void OnStartup()
    {
      ArcMap.Events.OpenDocument += new ESRI.ArcGIS.ArcMapUI.IDocumentEvents_OpenDocumentEventHandler(Events_OpenDocument);
    }

    void Events_OpenDocument()
    {
      System.Windows.Forms.MessageBox.Show("I opened a document.");
    }
}