2012-05-09 23 views
1

テキストボックスをタップすると、システムキーボードが表示されないことはありますか?私はカスタムキーボードを作成し、これは私が文章の一部だけを削除することはできませんので、テキストブロックでのみ動作することができます。タッチキーボードを非表示にする

答えて

3

IsReadOnlytrueに設定すると、ユーザはTextBoxのテキストを選択して貼り付けを実行でき、選択された場合、OSはソフトウェア入力キーボードを表示しません。あなたはまだコードを通じてTextBoxの内容を変更することができます。例えば;

<TextBox x:Name="ExampleTextBox" 
     IsReadOnly="True" 
     Text="Initial Content" 
     GotFocus="ExampleTextBox_GotFocus" 
     /> 

あなたのコードの背後にあります。

private void ExampleTextBox_GotFocus(object sender, System.Windows.RoutedEventArgs e) { 
    ExampleTextBox.Text += " ... focused!"; 
} 

は、ソフトウェアキーボードを経由してテキストを入力するからユーザーを防ぐためだろうが付加されます「...焦点を当てた」毎回、彼らはTextBoxにフォーカスを与えます。しかし、あなたは考えを得る。

もう1つのことは、TextBoxのスタイルを変更することです。 IsReadOnlyが設定されている場合、デフォルトでTextBoxは、ユーザーが変更できない視覚的な手がかりを提供します。ここではそうではありません。

+0

うわー、簡単なもの!ありがとうございました。ちょうど私が欲しかったこと。今私はカスタムキーボードを使用して、選択されたテキスト&コピーのようなテキストボックスから物事を得ることができます!後でそれをチェックして受け入れます。再度、感謝します。 – 0x49D1

+0

心配はいりません。あなたは 'TextBlock'と思われるものを作るためにこの同じトリックを(適切なスタイリングで)使うことができますが、ユーザはの内容をコピーすることができます。 – MrMDavidson

1

ユーザーがキーボードに触れると、キーボードにフォーカスが得られます。

あなたが開発者として持っている唯一のオプションは、これをキャッチしてthis.focusをテキストボックスからフォーカスを移動することです。

これは、デフォルトのキーボードがポップアップして非表示になっているフリッカーがあることを意味します。

私はキーボードアプリを持っているのでこれを知っています。他の方法はありません。

+0

しかし、フォーカスのないテキストボックスは、テキストブロックと同様に動作します。たとえば、テキストの一部を選択することはできません。 – 0x49D1

+1

最初のハードルを把握できない場合は、なぜアプリケーションを作成しますか?テキストボックスにはテキストプロパティがあります。すべての操作は、それに焦点を当てることなく行うことができます。 –

+0

多くのキーボードアプリがあります。オンラインで入手できるものもあります。http://www.silverlightshow.net/items/Windows-Phone-7-Creating-Custom-Keyboard.aspxこのリンクをご覧ください。 –

関連する問題