嗨,我正在构建一个Outlook加载项,我想知道是否有方法可以处理ItemChange事件,我知道我们可以通过固定任务窗格来使用它,还有其他方法吗?
答案 0 :(得分:1)
当前,只有在固定加载项的情况下才能使用ItemChanged事件。我们在user-voice页上跟踪Outlook加载项功能请求。请在此处添加您的请求。在进行规划过程时,会考虑用户语音功能请求。
答案 1 :(得分:0)
您需要使用addHandlerAsync(eventType, handler, [options], [callback])方法来订阅ItemChange
事件。这是MSDN声明的内容:
当前唯一受支持的事件类型是Office.EventType.ItemChanged,当用户选择新项目时将调用该类型。实施可固定任务窗格的加载项使用此事件,并允许加载项根据当前选定的项目刷新任务窗格UI。
Office.initialize = function (reason) {
$(document).ready(function () {
Office.context.mailbox.addHandlerAsync(Office.EventType.ItemChanged, loadNewItem, function (result) {
if (result.status === Office.AsyncResultStatus.Failed) {
// Handle error.
}
});
});
};
function loadNewItem(eventArgs) {
// Load the properties of the newly selected item.
loadProps(Office.context.mailbox.item);
};
此外,您可能会发现以下讨论很有用-Outlook Add-In API does not fire the ItemChange event consistently on Firefox/Chrome。 ItemChange在项目实际更改时触发,但在您仅更改选择内容时不会触发。