1

約 10 MB のログ ファイルを開き、特定の式を強調表示するアプリケーションを作成する必要があります。

WPF と richtextbox を使用するとうまくいくと思いましたが、richtextbox のレンダリング時間は受け入れられません。

ハイライトのようなリッチテキストボックスを持っているが、パフォーマンスが優れているものはありますか?

これを達成する他の方法はありますか?

4

4 に答える 4

1

Scintilla http://www.scintilla.org/は、コードを編集するためのボックスとして使用されます。これは、多くの異なるコード構文の強調表示を提供します。それを使用して、強調表示する必要のある部分を指定できる場合があります。

于 2009-06-16T19:31:12.307 に答える
1

ユーザーがログを編集できるようにする必要がない場合は、TextBlockを使用して、強調表示されるセクションを<Style>タグでラップして強調表示を実行できる場合があります。

于 2009-06-16T19:34:56.653 に答える
0

Flowdocumentをどのように生成していますか-実行している内容によっては、処理速度を上げることができる場合があります。ただし、特にUIスレッドでFlowDocumentを生成する必要あり、時間がかかりすぎると画面が真っ暗になるため、私もこれらの問題に遭遇しました。

于 2009-06-17T15:11:47.833 に答える
0

あなたの言っていることが理解できれば、シンタックス ハイライト RTB コントロールが必要です。私の個人的なお気に入りは、AvalonEdit コントロールです (codeproject に関する記事があります: http://www.codeproject.com/Articles/42490/Using-AvalonEdit-WPF-Text-Editor )。Visial のエディターのように構文を強調表示できます。スタジオ。エンド ユーザーが気に入るオートコンプリート機能もあります。

他のものが必要な場合は、ICSharp コード エディターもあります。(コードプロジェクトに関する別の記事: http://www.codeproject.com/Articles/30936/Using-ICSharpCode-TextEditor ) これは AvalonEdit とほぼ同じ機能を備えており、私もこれが気に入っています。実際に作成したアプリで ICSharp コード エディターを使用しましたが、その機能にはかなり満足しています。

私の知る限り、これらのコントロールはどちらも非常に効率的で、単なるリッチテキスト ボックスよりも優れています。

于 2014-01-01T20:56:53.720 に答える