在 C# 中以程式方式產生按鍵事件
在 C# 中模擬按鍵事件可以透過多種技術實現。以下是使用 WPF 框架的詳細方法:
WPF 解
要模擬特定 WPF 元素上的按鍵,例如在目前獲得焦點的元素上按下 Insert 鍵:
<code class="language-csharp">var key = Key.Insert; // 要发送的键 var target = Keyboard.FocusedElement; // 目标元素 var routedEvent = Keyboard.KeyDownEvent; // 要发送的事件 target.RaiseEvent( new KeyEventArgs( Keyboard.PrimaryDevice, PresentationSource.FromVisual(target), 0, key) { RoutedEvent = routedEvent } );</code>
此解決方案直接向目標引發 KeyDown 事件,繞過元處理。
文字輸入模擬
要模擬 TextInput 事件,請使用以下程式碼:
<code class="language-csharp">var text = "Hello"; var target = Keyboard.FocusedElement; var routedEvent = TextCompositionManager.TextInputEvent; target.RaiseEvent( new TextCompositionEventArgs( InputManager.Current.PrimaryKeyboardDevice, new TextComposition(InputManager.Current, target, text)) { RoutedEvent = routedEvent } );</code>
注意事項
以上是如何在 C# WPF 中以程式設計方式產生按鍵和文字輸入事件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!