现在的位置: 首页 > 综合 > 正文

为什么有些Office对象的事件无法使用

2014年03月03日 ⁄ 综合 ⁄ 共 711字 ⁄ 字号 评论关闭

今天碰到了个问题,发现无法使用某些对象事件,+=后双TAB出不来。
四处找原因,GOOGLE、MSDN上翻了许久,终于找到了原因和解决方法。
原因:写了一个同名的方法,而VSTO处理规则应该是方法>事件,所以有了同名的方法后事件就无法使用了。
如已经写了下面的方法:

 

 

如果再写Globals.ThisWorkbook.ActivateEvent+=,双TAB后会报以下提示:
此类中已存在处理程序”ThisWorkbook_ActivateEvent”,提示后会默认使用这个方法,明显,我们并不希望这个事件去使用这个方法,而是希望重写一段处理过程代码。
解决:命名为Excel.XXXEvents_Event类型

 

 

 

问题至此完美解决。
不过这个问题一般大家都不会碰到,因为一般没人会ThisWorkbook_ActivateEvent这样写吧。

 

 

 

 

作者:laoyebin(Paladin.lao)
个人网站英文出处:http://mrvsto.com/
个人网站中文出处:http://cn.mrvsto.com/

 

抱歉!评论已关闭.