2012-05-02 10 views
1

Log4Net을 WPF 앱에서 사용하고 있습니다. NotifyAppender를 사용하여 내 양식의 TextBox을 업데이트하는 곳에서 작업하고 있습니다. 이것은 상단에 가장 오래된, 하단에 최신으로 제공됩니다.Log4Net 순환 버퍼를 사용하여보기

나는 그것을 뒤집어서 가장 위에 올려야합니다. 또한 사용자가 메시지를 스크롤하고 "고정 해제"할 수 있도록보기 업데이트를 "고정"할 수 있기를 원합니다. "버퍼링 된"위치의 모든 메시지를 표시 할 수 있습니다. 메시지를 캡처하여 컬렉션에 넣고 정렬 한 다음보기에 표시해야한다고 가정하고 있지만 메시지를 캡처하는 방법을 모르겠습니다.

이 작업을 수행하는 가장 좋은 방법은 무엇입니까?

답변

1

MemoryAppender을 사용하여 WPF 응용 프로그램에서이 방법에 액세스 할 수 있습니다. 그러나 자신의 appender (힌트 : MemoryAppender의 소스 코드를 확인하십시오)를 작성하고이 appender가 응용 프로그램과 직접 통신 할 수있게하는 것이 좋습니다 (즉, 서비스 로케이터를 사용하여 귀하의 로그 메시지를 수신하는 서비스입니다.이 서비스는 MVSM을 사용하는 것으로 가정하여 TextBox을 채우는 ViewModel에서 사용됩니다. 일부 IoC 컨테이너를 사용하는 경우이 서비스가 가장 효과적 일 수 있지만 반드시 필요한 것은 아닙니다.