【问题标题】:When event AppointmentItem.Unload fire ?当事件 AppointmentItem.Unload 触发?
【发布时间】:2017-07-12 23:27:16
【问题描述】:

我正在使用 C#/.Net 中的 Outlook 2007 的 VSTO 加载项。我尝试在保存对象后释放对象的引用。首先,我尝试在事件 Unload with 中这样做 Marshal.ReleaseComObject(item) 但它并非一直有效。

我在互联网上发现 Outlook 在事件写入后立即触发了事件 AfterWrite(用户在 Outlook 中保存项目时触发事件)。但我不知道如何捕捉这个事件?

所以,我想问一下如何释放引用或捕获 AfterWrite 事件。

谢谢,

【问题讨论】:

  • 这首先取决于您如何获得对该项目的引用。是否来自 NameSpace.GetItemFromID、Explorer.Selection、Items 集合、Inspector.CurrentItem 等,请出示您的完整代码
  • 感谢您的回复!我从 UIExplorer 侦听器中的 Explorer.Selection 加载它。因为是我企业的项目,所以不能上传完整代码,抱歉:(.

标签: c# outlook-addin


【解决方案1】:

Unload 事件仅在 Close 事件之后发生,因此消息必须在 Inspector 中打开才能生效。

如果您从 Explorer.Selection 设置对项目的引用,则在完成后释放项目对象。如果您需要在更高的范围内保留对该变量的引用,则必须在 Explorer.SelectionChange 事件触发时释放它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-09-09
    • 1970-01-01
    • 1970-01-01
    • 2011-08-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-22
    相关资源
    最近更新 更多