我正在 Outlook 中实现带有电子邮件消息的自定义任务 Pane 。 核心取自此链接 MSDN (Walkthrough: Displaying Custom Task Panes with E-Mail Messages in Outlook)
添加了属性更改处理程序:
void TaskPane_VisibleChanged(object sender, EventArgs e)
{
Globals.Ribbons[inspector].ManageTaskPaneRibbon
.toggleButton1.Checked = taskPane.Visible;
...some code here...
mailItem.PropertyChange += PropertyChangeHandler;
}
PropertyChangeHandler 检查收件人是否已更改,并对帖子等执行一些繁重的例程。但是...如果我添加 10 个收件人并开始使用退格键删除它们 PropertyChangeHandler 在某个时候停止触发。 没有错误。自定义任务 Pane 上的按钮工作正常。
怎么了?
似乎事件被吃掉或检查器不正确,但我无法发现问题并找到解决方案。
我还认为在上一个事件完成之前触发下一个事件可能与“重负载”有关,但这是一个猜测
最佳答案
您需要调用 Save 方法或显式保存消息才能生成 PropertyChange事件被解雇。 Outlook 在 UI 中缓存值,并且在保存项目之前不会传播更改。
我还建议创建一个日志文件(一个常规文本文件),您可以在其中编写调试语句。因此,您将了解代码中发生的事情。
关于c# - mailItem.PropertyChange 停止触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27283147/