C# WPF跟踪事件问题
我在跟踪事件时遇到一些问题。这是我的密码:C# WPF跟踪事件问题,c#,wpf,trace,listeners,C#,Wpf,Trace,Listeners,我在跟踪事件时遇到一些问题。这是我的密码: PresentationTraceSources.Refresh(); Stream myFile = File.Create("trace.txt"); listener = new TextWriterTraceListener(myFile); PresentationTraceSources.RoutedEventSource.Listeners.Add(listener); PresentationTraceSources.RoutedEve
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文件包含“testmywarning”字符串,但该文件为空。但是如果我把代码中的一个字符串改为
PresentationTraceSources.RoutedEventSource.Switch.Level = SourceLevels.All;
我可以在名为“trace.txt”的文件中看到字符串“testmywarning”。但这始终跟踪所有事件类型,而不仅仅是警告。但我只想追踪警告。你能帮我解决这个问题吗?只需添加:
PresentationTraceSources.RoutedEventSource.Flush();
最后,它将对任何源代码级别起作用
实际上,一旦你有了比SourceLevels.All
更高的级别,你就必须刷新你的代码,将它写入你的监听器