2016-07-07 5 views
0

のためのテキストを追加リッチテキストボックス、プログラムはTCP/IPによる駐車ハードウェアからのメッセージを受け取り、私はWinフォームはこちらWinフォームの豊富なテキストボックスのために私の問題である24/7

richtextbox.AppendTextでWinフォームのリッチテキストボックスのイベントを表示します()

すべてが一日の中のプログラムの凍結を除いてうまく機能しているか、2

はこれを手に良い方法はありますか?

ログファイルに書き込んでリッチテキストボックスにバインドしますか?

+0

これには制限が必要です。制限を超えると、最も古いレコードが削除されます。行ごとに書き込むと、おそらくListBoxがRichTextBoxより適しているでしょう。 –

答えて

0

リッチテキストボックスは、大文字ファイルを処理してテキスト全体を読み込んで描画するのに最適なコントロールではない場合があります。

ロギングと分離がこれに対する1つの解決策です。たとえば、毎日のログを作成し、1日を選択するカレンダーを作成することができます。

また、1つの大きなテキストファイルの特定の部分、たとえば最後の1000行だけを表示することでもこの問題を解決できます。これにはいくつかの欠点があります。ファイルの終わりまで反復する必要があります。

もう1つの解決策は、仮想化をサポートするコントロールです。これは現在表示されているアイテムのみを描画して読み込みます。もちろん、これにはいくつかの意味があります。この場合、テキストファイルを改行またはその他の基準で区切ります。

1

これまでに質問されています。 メモリ制限、HD(ファイルサイズ)、RAM(ディスプレイ) これをWinFormsで実装し、既存のロギングコードを使用しない場合は、ListViewとdatetimeと制限されたログ文字列をリングバッファとして使用することができます。または、たとえばSQLite(今日よりも古いエントリを削除する - TimeSpan、新しいものを挿入する)、DataGridViewを使用する(スムーズなスクロールのために理想的に派生しダブルバッファリングする)。

関連する問題