2011-09-27 70 views
0

我正在使用Excel XP的C#加載項,我需要使用我自己的對話框處理文件打開和保存事件。我設法通過(基本上)在Excel應用程序對象上處理WorkbookBeforeSave事件並取消默認行爲來實現此目的。有一個WorkbookOpen事件,但它在文檔打開後觸發,而不是在用戶單擊「打開」按鈕或按下Ctrl-O時觸發。使用COM加載項替換Excel XP中的打開文件對話框

這裏有一個類似的問題,但解決的辦法是更高版本的辦公室,也不會爲我工作:Replacing Word's Open File Dialog in a COM Add-in

我不能簡單地定製正常打開文件對話框 - 我需要完全更換。有任何想法嗎?

回答

0

一個有點不好的方法是從Excel的com接口中下載WindowActivate事件(對於excel10來說,dispID 0x614)。然後跟蹤最後一個hwnd並觀察它何時發生變化&如果它是excel doc窗口(我認爲你可以使用spy ++查找excel窗口名稱)