2014-07-08 2 views
0

필터 추적 이벤트에 문제가 있습니다. WPF 추적 이벤트 문제

PresentationTraceSources.Refresh(); 
Stream myFile = File.Create("trace.txt"); 
listener = new TextWriterTraceListener(myFile); 
PresentationTraceSources.RoutedEventSource.Listeners.Add(listener); 
PresentationTraceSources.RoutedEventSource.Switch.Level = SourceLevels.Warning; 
PresentationTraceSources.RoutedEventSource.TraceEvent(TraceEventType.Warning, 0, "Test my warning"); 

그럼 난 내 응용 프로그램을 실행하고 해당 파일 trace.txt가 포함 된 문자열 "내 경고를 테스트"것으로 기대하지만이 파일이 비어 : 여기에 내 코드입니다. 내가

PresentationTraceSources.RoutedEventSource.Switch.Level = SourceLevels.All; 

에 코드 한 문자열을 변경한다면 나는 "trace.txt"라는 파일에 "내 경고를 테스트"문자열을 볼 수 있습니다. 그러나 이것은 항상 경고뿐 아니라 모든 이벤트 유형을 추적합니다. 하지만 경고 만 추적하고 싶습니다. 이 문제를 해결하도록 도와 줄 수 있습니까? 모든 소스 레벨, 작품을 마지막에

PresentationTraceSources.RoutedEventSource.Flush(); 

그것은 것입니다 :

답변

1

그냥 추가 할 수 있습니다.

실제로 다른 레벨이 SourceLevels.All 이상이되면 즉시 플러시하여 TraceSource을 청취자에게 보내야합니다.