13

Windows 8 タブレット用の WPF アプリケーションを作成しています。これは完全な Windows 8 であり、ARM/RT ではありません。

ユーザーがテキスト ボックスに入力すると、次のコードを使用してスクリーン キーボードを表示します。

System.Diagnostics.Process.Start(@"C:\Program Files\Common Files\Microsoft Shared\ink\TabTip.exe");

これはうまくいきますが、キーボードを再び非表示にする方法がわかりませんか?

誰でもこれを行う方法を知っていますか?

また、キーボードが表示されたときにフォーカスされたコントロールが上に移動するように、アプリケーションのサイズを変更する方法はありますか? Windows RT アプリケーションの場合と少し似ています。

どうもありがとう

4

8 に答える 8

3

プロジェクトをオープンソース化して、WPF アプリでの TabTip 統合に関するすべてを自動化しました。

nugetで取得できます。その後は、アプリの起動ロジックで簡単な構成を行うだけです。

TabTipAutomation.BindTo<TextBox>();

TabTip オートメーション ロジックを任意の UIElement にバインドできます。仮想キーボードは、そのような要素がフォーカスされると開き、要素がフォーカスを失うと閉じます。それだけでなく、TabTipAutomation は UIElement (または Window) をビューに移動し、TabTip がフォーカスされた要素をブロックしないようにします。

詳細については、プロジェクト サイトを参照してください。

于 2016-08-24T07:36:04.727 に答える
0

まあ、私はこのようなことを試してみます

Process myProcess = Process.Start(@"C:\Program Files\Common Files\Microsoft Shared\ink\TabTip.exe");
myProcess.CloseMainWindow();
myProcess.Close();
于 2013-06-13T15:13:00.700 に答える
0

プログラムでキーボードを非表示にする方法はわかりませんが、ご存知のように、ユーザーがテキストボックスをクリックしたときにWPFアプリケーションでタッチキーボードをトリガーする(そのまま、表示する)方法のサンプルを最近公開しました。

http://code.msdn.microsoft.com/Enabling-Windows-8-Touch-7fb4e6de

このサンプルの優れた点は、Process を使用する必要がなく、代わりにサポートされている Windows 8 API を使用して、オートメーションを使用して TextBox コントロールのタッチ キーボードをトリガーすることです。

これは私が何ヶ月も取り組んできたことであり、最終的にこの例を私たちのコミュニティに提供できることをうれしく思います。サンプルの Q&A ペインで質問、提案、問題などがある場合はお知らせください。

于 2013-12-13T19:34:54.803 に答える
0

これを試してください

System.Diagnostics.Process.Start("TabTip.exe");

これがお役に立てば幸いです。

于 2015-02-21T14:37:10.343 に答える