2009-03-30 15 views
2

次の動作(WM6)を複製しようとしています。Windows Mobileでキーボードをポップアップするにはどうすればよいですか?

[設定] - > [バージョン情報] - > [デバイスID]に移動します。 [デバイス名]テキストボックスにフォーカスが移動し、オンスクリーンキーボードがポップアップします。

私は自分のアプリケーションで、好ましくはマネージコードで同じことをやりたいと思っています。

答えて

10

オンスクリーンキーボードは、Microsoft.WindowsCE.Forms名前空間にあります。

これにプロジェクト参照を追加すると、InputPanelコントロールを使用できるようになります。フォームの1つをフォームに追加してからコードに追加します。

private void txtField_GotFocus(object sender, EventArgs e) 
{ 
    //Enabled == show 
    inputPanel.Enabled = true; 
} 

private void txtField_LostFocus(object sender, EventArgs e) 
{ 
    inputPanel.Enabled = false; 
} 
+0

ありがとうございます。魅力的です。キーボードはInputPanelと呼ばれていたのでしょうか? :) –

+0

私はそれらがn個のテキストボックスであるフォームを持っています、どのようにすべてのテキストボックスの入力パネルを有効にしますか? –

+0

@ NKhan同じtxtField_GotFocusイベントとtxtField_LostFocusイベントをn個のテキストボックスすべてに割り当てることができます。送信者をTextBoxにキャストして、それがどれであるか把握することができます。 –

1

私はあなたにも(TreeUKで述べたように、名前空間への参照を追加するaddtionで)プロジェクトのMicrosoft.WindowsCE.Forms.InputPanelクラスのインスタンスをインスタンス化する必要があることを追加します。

これを行う最も簡単な方法は、InputPanelコントロールをデザインモードでWindowsフォームにドラッグすることです。 InputPanelインスタンスの名前は、フォームフィールドのイベントハンドラで参照するものになります。

関連する問題