4

Outlook オブジェクトに関連付けるカスタム データのために、サーバー データベースに接続する新しいリボン タブである Outlook アドインがあります。

現在、このリボン タブはメール アイテムに表示されています。

タスクとカレンダー アイテム (予定、会議など) に表示するように拡張しています。

現在、作成された新しいアイテムを決定する方法は次のとおりです -->

Microsoft.Office.Interop.Outlook.Application interopApplication = ThisAddIn.Application.Application
if (interopApplication.ActiveExplorer().CurrentFolder.DefaultItemType.ToString() != "olTaskItem")
{
  ....
}

このようにして、フォルダーとそれに関連付けられた新しいアイテムを特定できます (受信トレイで新しいメール アイテムを作成し、カレンダーで新しい予定を作成するなど) 。

Inbox で New Appointment をクリックすると、作成された新しい項目が としてolMailItemではなく として識別されolAppointmentItemます。カレンダー ビューで [新しいメール アイテム] をクリックした場合も同様です。

私の質問は、現在のフォルダーに関係なく、作成された新しいアイテムをどのように判断するのですか?

4

1 に答える 1

1

メソッドのをチェックして、MessageClassを決定する必要があります。ActiveInspectorOlItemType

string itemClass = Globals.ThisAddIn.Application.ActiveInspector().CurrentItem.MessageClass;
if (itemClass == "IPM.Appointment")
  // you have a calendar item
else if (itemClass == "IPM.Task")
  // you have a task item
else if (itemClass == "IPM.Note")
  // you have a message item
于 2012-12-03T14:51:03.797 に答える