我正在爲一個程序編寫一個插件,我需要跟蹤何時在活動文檔中添加,刪除和編輯本機對象。該API具有編輯文檔時觸發的事件。但是,程序不會跟蹤本機對象實際更改的時間。而是將對象更改視爲要刪除的對象,然後立即用具有相同ID的另一個修改對象替換。這樣做是爲了讓程序可以跟蹤撤消記錄。如何追蹤何時發生多個事件?
一些嘗試,我確定事件引起,具體如下:
將對象添加: OnAddObject事件
一個對象被刪除: OnDeleteObject事件
對象被更改: OnReplaceObject事件 - > OnDeleteObject事件 - > OnAddObject事件
現在,我的插件只能觀看OnAdd和OnDelete事件,它正在向集合中添加和刪除自定義對象的實例。但是這也意味着每次對象更改時,我的插件都會刪除重新初始化一個幾乎相同的對象。我寧願知道文檔對象已經改變,所以我的自定義對象可以刷新,而不是完全重新實例化。
我的訂閱OnDelete和OnAdd事件的方法如何告訴對象沒有真的被添加或刪除,而是因爲它已經被更換而被替換?
我想這是不可能的,因爲添加/刪除事件在替換事件之前觸發。 – Zyphrax 2009-08-02 09:30:24