1

WPF アプリで Log4Net を使用しています。NotifyAppender を使用してフォームを更新している場所で動作していTextBoxます。これは、上が最も古いもの、下が最新のものです。

それを逆にして、最新のものを上に置く必要があります。また、ビューの更新を「フリーズ」して、ユーザーがメッセージをスクロールしてから「フリーズ解除」できるようにしたいと考えています。「バッファリング」されたすべてのメッセージを表示できるようになりました。メッセージをキャプチャしてコレクションに配置し、並べ替えてからビューに表示する必要があると想定していますが、メッセージをキャプチャする方法がわかりません。

どうすればこれを達成できますか?

4

1 に答える 1

1

MemoryAppenderの使用を検討し、WPF アプリケーションから何らかの方法でこれにアクセスできます。ただし、独自のアペンダーを作成し (ヒント: MemoryAppender のソース コードを確認してください)、このアペンダーがアプリケーションと直接通信できるようにすることをお勧めします (つまり、接続するためにサービス ロケーターを使用できます)。ログ メッセージを受信するサービス. このサービスは、ViewModel (MVVM を使用すると仮定) によって使用され、TextBox.

于 2012-05-02T18:07:18.267 に答える