6

Visual Studio の出力ウィンドウでは、テキスト キャレットを出力の最後に配置して、新しいテキストがログに記録されたときにテキスト ボックスが自動的に下にスクロールするようにすることができます。また、キャレットが最後にない場合、スクロールダウンしません。これを WPF TextBox で模倣したいと思います。

私はそれを行うことができましたが、TextBox が読み取り専用でない場合のみです。これは、キャレットが必要なためです。読み取り専用の TextBox がある場合、キャレットは表示されません。

問題は、テキストボックスが編集可能 (コピー/切り取り/貼り付けコマンドと入力) であることですが、編集したくありません。

きれいな解決策はありますか?TextBox がフォーカスされているときに動作する必要がある CommandBindings があるため、すべてのキーをブロックしないことをお勧めします。

ありがとう

4

2 に答える 2

4

どうやら、この問題のためだけにプロパティを追加するのに十分な数の人々が同じ問題を抱えていたようです。プロジェクトで .NET 4.0 を使用するように設定できる場合、TextBox には新しいプロパティIsReadOnlyCaretVisibleがあります。

于 2010-03-04T13:58:26.427 に答える
0

TextBox のサブクラス化を回避し、テキストを変更するすべてのキーボード入力をブロックしないと思います。

于 2009-06-11T09:39:32.470 に答える