2016-11-13 5 views
0

WPF TextBoxでマウスクリックすると、テキストボックスにフォーカスが得られ、すべてのテキストが選択されます。WPF TextBoxで「すべてを選択」を無効にする方法

どうすればこの動作を無効にできますか?クリックだけで、キャレットはchar上に置かれます(良い古いウィンドウのように)。 なぜですか?テキストボックスをクリックすると、テキストを入力するか、または文字を入力するためにcarretの位置を設定します。マークされたテキスト全体を最初に選択解除してから、その位置をもう一度クリックする必要はありません。

もう1つは、ウィンドウがフォーカスを失って戻ったときに、テキスト全体が再び選択され、カレットの位置が失われることです。したがって、別のウィンドウからテキストをコピーして、テキストボックスにペーストせずに正しいカレットの位置を再度選択することはできません。

これはシステムの「機能」(W8.1/W10)ですが、WPF以外のテキストボックスの動作は同じである可能性がありますが、これは面倒です。あなたの助けのアイデアに感謝します。

答えて

1

私のテキストボックスは、デフォルトでこれをしない、私はここでは、前述している物事の仕組みを説明しただけで、私のViewModelのプロパティ

でTextBox.Textプロパティをバインドし、それをやっているだけで一つのこと、あなたはそれらを元に戻す必要があります。 https://social.msdn.microsoft.com/Forums/vstudio/en-US/564b5731-af8a-49bf-b297-6d179615819f/how-to-selectall-in-textbox-when-textbox-gets-focus-by-mouse-click?forum=wpf

+0

これらのリンクはすべて「選択」する方法を示していますが、「すべてを選択」するのを防ぐ必要があります。現在のところ、テキストボックスには論理と束縛はなく、常にテキスト全体が選択されています。 – kux

関連する問題