語言

UIElement.KeyDown 事件

定義

當 UIElement 正在對焦時按下鍵盤鍵時,會發生這種情況。

public:
 virtual event KeyEventHandler ^ KeyDown;
// Register
event_token KeyDown(KeyEventHandler const& handler) const;

// Revoke with event_token
void KeyDown(event_token const* cookie) const;

// Revoke with event_revoker
UIElement::KeyDown_revoker KeyDown(auto_revoke_t, KeyEventHandler const& handler) const;
public event KeyEventHandler KeyDown;
function onKeyDown(eventArgs) { /* Your code */ }
uIElement.addEventListener("keydown", onKeyDown);
uIElement.removeEventListener("keydown", onKeyDown);
- or -
uIElement.onkeydown = onKeyDown;
Public Custom Event KeyDown As KeyEventHandler 
<uiElement KeyDown="eventhandler"/>

事件類型

備註

UI 中的控制項只有在具有輸入焦點時才會產生鍵盤事件。 預設情況下,視覺樹中第一個可聚焦元素會由系統賦予焦點。 當使用者直接點擊或點擊該控制項,或使用 Tab 鍵進入內容區的分頁序列時,個別控制鍵會獲得焦點。 你也可以透過呼叫 UIElement.Focus(Microsoft.UI。Xaml.FocusState)。

KeyDown 是路由事件。 欲了解更多路由事件概念,請參閱 事件與路由事件總覽。

KeyDown 使用 KeyRoutedEventArgs 事件資料。 對於大多數處理器情境來說,最 KeyRoutedEventArgs 相關的屬性是 Key ,可能還有 KeyStatus。 關於處理鍵盤事件的更多資訊,包括定義 KeyEventHandler 方法的範例程式碼,請參見 鍵盤互動。

處理鍵盤事件的一種情境是支援應用程式的存取鍵或加速鍵,或應用程式內的區域或控制項。 欲了解更多此情境資訊,請參見 鍵盤無障礙。

特定的 Windows 執行階段 控制項可能對 KeyDown 輸入事件有類別式處理。 如果是這樣,控制鍵大概有 OnKeyDown 方法的覆寫。 通常這些類別處理器是用來處理部分按鍵操作,讓使用者能以鍵盤操作該控制項。 通常,這種互動會支援鍵盤無障礙功能。 若按鍵按鍵是透過類別處理處理,則該按鍵被視為已處理,且該按鍵不會被該控制項上的任何使用者程式碼處理程式觸發。 通常這只會針對幾個專用的鍵。 例如, ButtonBase 有類別處理,讓 空白 鍵和 Enter 鍵作為呼叫按鈕的鍵盤對應 物來處理。 這內建了鍵盤的對應功能,可以輕觸按鈕或用滑鼠點擊,並實現僅用鍵盤操作介面與按鈕的無障礙體驗。 但除了空格或 Enter 以外的按鍵,仍然會觸發 KeyDown 和 KeyUp 事件。Button 關於基於類別的事件處理方式,請參閱 事件與路由事件總覽。

KeyDown 支援即使事件資料標記 為已處理,也能將事件處理器附加到將被呼叫的路由上。 請參見 AddHandler。

適用於

另請參閱