コンテキストメニューで右クリックしてカスタムボタンをクリックすると、現在選択されている埋め込み添付ファイルオブジェクトを取得したい。
これまでに行った手順は次のとおりです。
ContextMenuInlinePictureリボンコンテキストメニューのカスタムボタンを追加しました
<customUI ...> <contextMenus> <contextMenu idMso="ContextMenuInlinePicture"> <button id="SendInlinePictureToHbbButton" label="Send to HBB" onAction="OnSendInlinePictureToHbbButtonClick" /> </contextMenu> </contextMenus> </customUI>
それを右クリックすることで、関数OnSendInlinePictureToHbbButtonClickを呼び出しています。
public void OnSendInlinePictureToHbbButtonClick(IRibbonControl control) { var msg = "OnSendMailToHbbButtonClick \n\n"; if (control.Context is Explorer) { msg = "Context=Explorer \n"; var explorer = control.Context as Explorer; if (explorer.AttachmentSelection.Count >= 1) { msg += "AttachmentSelection \n"; msg = explorer.AttachmentSelection .Cast<Attachment>() .Aggregate(msg, (current, attach) => current + attach.DisplayName + "\n"); } else { var selection = explorer.Selection; msg += "MailItemSelection \n"; if (selection.Count == 1) { var olItem = new OutlookItem(selection[1]); msg = msg + olItem.Subject + "\n" + olItem.LastModificationTime; } else { msg = msg + "Multiple Selection Count=" + selection.Count; } } } MessageBox.Show(msg); }
アドインを実行しているときに、埋め込まれた画像/添付ファイルを右クリックすると、カスタムコンテキストメニュー項目が表示されます。
- そのボタンをクリックすると、上記のメソッドが実行されますが、「AttachmentSelection」を取得できません。代わりに、「MailItemSelection」を取得します。
- アタッチメントオブジェクトのユーザーを右クリックして取得するにはどうすればよいですか?