質問: お世話になっております。 C# WPF Windows10 でアプリを作成しています。 名前を入力するテキストボックスをタッチした際、タッチキーボードが表示されます。 この状態で、 ・タッチキーボード以外をタッチした際に、このタッチキーボードを非表示にしたい。 ・名前を入力後、Enter押下により、このタッチキーボードを非表示にしたい。 のですが、どのように行えば可能でしょうか? 「タッチキーボード以外をタッチした」「Enter押された」をイベント?のようなもので知り、 その際に「タッチキーボード非表示」にするような処理を行えば良さそうな気がするのですが、 あってますでしょうか? また、実際にどのようにコードを書けばいいのかが分かりません。 宜しくお願い致します。
回答: テキストボックスからフォーカスが外れればタッチキーボードも非表示になるはずです。 テキストボックス外のコンポーネントのClickやEnterキーをKeyDownなどでイベントをひっかけ、テキストボックスからフォーカスを外す処理を入れてやればどうでしょうか。 あと、検索してみたらSendMessegeでキーボードを閉じる実装方法も見つかりました。 C# WPF タッチキーボードを表示させたくない | stackoverflow フォーカス外しでうまくいかなかったら上記の方法も試してみてください。