Microstation 中监听元素修改事件

在进行 Microstation 二次开发时,有时候需要监听元素的修改事件,实现联动修改,可以在 Addin 上注册 ElementChangedEventHander 事件。

事件有一个 ElementChangedEventArgs,从这个参数中可以获取需要的信息。

获取操作

获取是什么操作导致元素被修改,可以通过 ChangeTrackKind 来获取,它的值如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
public enum ChangeTrackKind
{
Delete = 1,
Add = 2,
Modify = 3,
ModifyFence = 5,
Mark = 7,
ModelAdd = 9,
ModelDelete = 10,
AddXAttribute = 11,
DeleteXAttribute = 12,
ModifyXAttribute = 13,
ReplaceXAttribute = 14
}

获取新元素

属性 NewElement 代表新元素。

获取旧元素

参考

  1. 事件API

  2. 元素拷贝、移动事件