2011-03-30 80 views
0


我爲Outlook 2003創建了C#加載項。加載宏以新郵件格式創建命令欄。該命令欄包含一個打開「分類」對話框的按鈕。 要打開對話框,我使用MailItem接口的ShowCategoriesDialog方法。Outlook 2003 vsto加載項分類對話框在新郵件窗口後打開

Microsoft.Office.Interop.Outlook.MailItem item = (MailItem)inspector.CurrentItem; 
item.ShowCategoriesDialog(); 

它工作正常,但在多臺機器中,分類窗口在新郵件窗口後打開。

你知道如何解決它嗎?

非常感謝你,
舍甫琴科Kozachuk

我能想到的副手

回答

0

兩種方式。

1)嘗試最小化和恢復檢查器,你有一個參考(Inspector.WindowState),可能最小,恢復,showcat或min/showcat /恢復一些組合不是一個很好的解決方案,因爲它會導致一些閃爍。 2)如果您是在導致檢查員出現的事件內做到這一點,那麼您可能沒有讓檢查完全實現。在這種情況下,使用定時器或後臺線程來延遲顯示貓窗口一點(雖然這有點hackish)。 3)使用Windows API EnumWindows來查找Categories窗口,並使用SetWindowPos將它帶回到zorder的頂部。 (可能是更好的解決方案)。

我在很多場合都遇到過這種Outlook問題,雖然不是這個特定的實例。

+0

我正在從點擊按鈕時觸發的事件執行此操作。我試過計時器,最小化/恢復 - 沒有幫助。分類窗口是模態的,在打開時我無法做任何事情,所以我不能使用第3種方式。我們已經嘗試重新安裝Outlook,它有所幫助 - 沒有任何問題了。 – 2011-04-05 08:43:39

相關問題