如何在ArcMap控件中捕获OnMouseDown事件?

时间:2010-05-18 19:13:42

标签: c# esri arcobjects arcmap

我在ArcMap中有一个Control,我在其中创建了按钮,一个列表框和一些其他按钮。我想将坐标项添加到列表框中。

情景:

  1. 用户单击控件上的“添加坐标”按钮。
  2. 然后,用户点击地图以添加坐标,在地图上找到坐标。
  3. 坐标将添加到列表框中。
  4. 完成后,我将对列表框坐标进行一些分析......我只需要捕获多个坐标。所以我需要找到一个OnMouseDown事件,我可以附加到那些行上的东西。

    这些都是在控件中构建的,所以我需要在这个控件上有一个按钮,而不是在工具栏中。

    全部谢谢!

1 个答案:

答案 0 :(得分:1)

我写了一个继承自BaseTool的类。有按钮单击事件,创建类的新实例,将对表单(或控件)的引用作为构造函数arg传递。将IApplication.CurrentTool设置为此新实例。

覆盖MouseDown并调用表单(或控件)公开的AddPoint(IPoint)方法。实现AddPoint,以便填充列表框。