生成的代码很简单。但是,假如已经定义了强类型的 applicationObject 成员变量,则现在需要使用显式转换来分配该变量:
|
public void OnConnection(object application, |
我们需要对 OnConnection() 方法再有一个初始更新。按照 Knowledge Base article,OnConnection() 的整洁且正确的实现应当执行运行库测试来确定连接模式是否不同于 ext_ConnectMode.ext_cm_Startup,如果是这样,则将传入的 System.Array 转发给 OnStartupComplete() 的外接程序实现:
|
public void OnConnection(object application, |
OnDisconnection() 方法
当外接程序与宿主断开时(通常通过添加/删除外接程序对话框或在宿主关闭时)将调用该方法。断开模式由类型 ext_DisconnectMode 的第一个参数表示:
|
public enum ext_DisconnectMode |
向导生成的 OnDisconnection() 实现当前为空。很明显,这是外接程序执行任何清理操作的地方,为了成功关闭,外接程序可能需要执行该操作。再次,按照 Knowledge Base article,该方法的整洁且正确的实现应当对连接模式进行测试(这次针对除了 ext_DisconnectMode.ext_dm_HostShutdown 以外的任何内容),并将传入的 System.Array 转发给我们的 OnBeginShutdown() 的实现:
|
public void OnDisconnection(Extensibility.ext_DisconnectMode |
OnAddInsUpdate() 方法
如果最终用户在宿主中插入或删除外接程序,将调用 OnAddInsUpdate() 方法(可以用 Application.COMAddins 属性在运行时获得当前列表)。如果需要在最终用户添加或删除新外接程序时执行任何特殊的过程,这里将是执行该操作的地方。自动生成的实现当前为空,并且可以保留该状态。
OnStartupComplete() 方法
宿主应用程序完成加载之后,将调用该方法。这时,所有宿主资源均可供外接程序使用。这是为外接程序类型构造 UI 的理想地方,因为可以安全获得 Explorers 和 Inspectors 集。
OnBeginShutdown() 方法
最后介绍 OnBeginShutdown(),它表示宿主正处于关闭过程中(正好在调用 OnDisconnection() 方法之前)。这时,仍然可以访问宿主应用程序,所以,这是删除插入到活动资源管理器中的任何 UI 小部件的理想地方。
URL查看 http://www.qqread.com/csharp/u301211.html相关专题
- Java编程开发手册 (8321篇文章)
- Windows Shell开发:浏览一个文件夹 (0次浏览)
- Windows Shell编程系列 - 获取图标 (0次浏览)
- Windows Shell 开发:从“桌面”开始展开 (0次浏览)
- 实验分析C#中三种计时器使用异同点 (0次浏览)
- C#调用QTP自动化对象模型的实例 (0次浏览)
- 利用 C# 实现任务栏通知窗口 (0次浏览)
- 深入C#学习系列之不可小瞧的using关键字 (0次浏览)
- 如何用.NET技术在线生成网站LOGO (0次浏览)
- C#实现遗传算法 模拟花朵的进化 (0次浏览)
- c#里的运算符重载 (0次浏览)



