2013-07-25 15 views
1

塊引用字加載,處理的KeyDown對組合框在customui

需要Word加載一些幫助CustomUI。 我有一個

<combobox /> 

在我的自定義用戶界面。

如何處理輸入按用戶?
我需要執行一些操作時,用戶按輸入在那ComboBox。 我可以通過某種方式添加KeyDown事件,或者將IRibbonControl轉換爲有用的東西?

UPDATE:

所作的判定不包括該功能。但仍然對解決這個問題感興趣。

回答

0

即使WindowSelectionChange事件也不會幫助你。它適用於其他按鍵,但不適用於Enter和Backspace(正如我所知)。

你必須使用low level keyboard hook

EDITED * *

有當任一鍵被按下它會被稱爲回調。

private static IntPtr HookCallback(
       int nCode, IntPtr wParam, IntPtr lParam) 
      { 
       if (nCode >= 0 && wParam == (IntPtr) WM_KEYDOWN) 
       { 
        int vkCode = Marshal.ReadInt32(lParam); 
        //Check if the enter key is pressed 
        if (vkCode == (int) Keys.Enter) 
         // Do here whatever you need 
       } 
       return CallNextHookEx(_hookID, nCode, wParam, lParam); 
      } 
+0

謝謝,但是,即使是這樣的解決方案,我不知道什麼時候完全按下了「ENTER」鍵。感謝您的幫助:) – ikulyk

+0

@ikulyk編輯我的答案,看看它是否有幫助 – Kiru

+0

好吧,沒有焦點事件或類似的東西在絲帶,所以我不知道天氣它被按下在我的組合框或其他地方。但鏈接是有幫助的) – ikulyk