簡體   English   中英

C#中系統鍵的KeyDown事件

[英]KeyDown event in C# for system keys

我試圖捕獲任何KeyDown事件,而不管焦點在哪個項目上。 我的構造函數中包含以下代碼:

Window.Current.CoreWindow.KeyDown += CoreWindow_KeyDown;

我的功能在這里:

void CoreWindow_KeyDown(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.KeyEventArgs args)
{
    //Stuff in here
}

這對於常規鍵(箭頭,字母)工作正常,但不接收特殊鍵(例如EnterTab )的事件。

如何攔截EnterTab鍵的事件,並阻止系統處理該事件? 無論什么對象具有焦點,我都需要一直獲取事件。

處理密鑰的過程非常復雜。 KeyDown實際上很晚,並且不包含“控制”鍵。 要獲取這些鍵,您需要覆蓋IsInputKey(用於Tab和Control鍵)或ProcessDialogKey(用於箭頭鍵)。 在此處查看一些出色的文檔https://msdn.microsoft.com/zh-cn/library/vstudio/ms171535%28v=vs.100%29.aspx

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM