1
創建命令按鈕
我看的一定數量的創建這樣的Outlook上下文菜單按鈕的例子:在Outlook 2010 VSTO
private void Application_ItemContextMenuDisplay(Microsoft.Office.Core.CommandBar CommandBar,
Selection Selection)
{
var button = (Office.CommandBarButton)CommandBar.Controls.
Add(Office.MsoControlType.msoControlButton, missing,
missing, missing, missing);
button.accName = "SowSelectedItem";
button.DescriptionText = "Show Selected item";
button.Caption = button.DescriptionText;
button.Tag = "ShowSelectedItem";
button.Click += ContextMenuItemClicked;
}
只能用一次正確的 - 它創建的菜單就好上的按鈕它是可點擊的,我的事件處理程序在第一次訪問時觸發。
但是,菜單激活反覆觸發,每次運行時它似乎都會添加一個事件處理程序(但菜單上只顯示一個按鈕),因此單擊該按鈕現在會多次觸發處理程序 - 每次訪問一次之前做過的 - 點擊處理程序正在積累(即使我每次都添加一個新按鈕)。
好了,我想我可以:
- 設置一個標誌,並且只加載一次按鈕(不顯示在隨後的激活)
- 緩存按鈕,每次添加它(也沒有按「T展示在後續激活)
- 緩存,使按鈕可見,每次啓用(不顯示)
我覺得我失去了一些東西。如何連接按鈕,以便正確激活按鈕,並且只有一個事件處理程序被擊中?