c# - 如何正确实现 Outlook 检查器的 Wrapper 类
问题描述
C#、VSTO、Outlook 2016
我找到了Connect 类。但是当我尝试连接 NewInspector 事件时,总是会收到 IDE1007 错误。
public class Connect
{
private Outlook.Inspectors inspectors;
private List<OutlookInspector> inspectorWindows;
inspectors.NewInspector += new Outlook.InspectorsEvents_NewInspectorEventHandler(inspectors_NewInspector);
void inspectors_NewInspector(Outlook.Inspector Inspector) {
// Check to see if this is a new window you don't already track
OutlookInspector existingWindow = FindOutlookInspector(Inspector);
if ( existingWindow == null ) {
AddInspector(Inspector);
}
}
显然没有找到检查员。我在这里想念什么?
稍后在 OutlookInspector.FindOutlookInspector 方法中找不到 Window 变量:
private OutlookInspector FindOutlookInspector(object window) {
foreach ( OutlookInspector inspector in inspectorWindows ) {
if ( inspector.Window == window ) {
return inspector;
}
}
return null;
}
解决方案
好吧,当然 -inspectors.NewInspector +=
线在任何方法之外。我怀疑它必须在构造函数中:
public Connect(Outlook.Inspectors Inspectors)
{
inspectors = Inspectors;
inspectorWindows = new List<OutlookInspector>();
inspectors.NewInspector += new Outlook.InspectorsEvents_NewInspectorEventHandler(inspectors_NewInspector);
}
然后,您需要构造Connect
该类的一个实例并将其传递Application.Inspectors
给它。
推荐阅读
- qooxdoo - 通过 RPC 调用向服务器发送 qooxdoo 表单控制器模型
- angular - 在 HTML 字符串中传递角度 routerLink URL 的最佳方法
- javascript - 如何将变量从电子传递到背后的角度
- html - 如何使用Foundation将div中的所有元素居中
- firebase - Firestore:重新联机时如何强制数据同步
- python - 通过另一个 DataFrame 中的唯一值过滤一个 DataFrame
- typescript - 如果未显式设置,编译器无法解析 Generic
- python - 如何在列表中找到配对和?
- c - C 编程代码不会停止从文本文件中读取
- javascript - 在 mongo 集合中创建新 JSON 条目的快速路由工作,但当我使用 axios 发送请求时没有