C# でキー イベントをプログラム的に生成する
C# での主要なイベントのシミュレーションは、さまざまな手法を通じて実現できます。 WPF フレームワークの詳しい使用方法は次のとおりです:
WPF ソリューション
現在フォーカスされている要素で Insert キーを押すなど、特定の WPF 要素でのキー押下をシミュレートするには:
<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 で Keypress イベントと TextInput イベントをプログラムで生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。