private void LoggerManager_Logged(object sender, LoggedLoggerManagerEventArgs e) { while (loggerMessages.Count > 100) { loggerMessages.RemoveAt(0); } loggerMessages.Add(e.LoggerMessage); RaisePropertyChanged(() => ResultLoggerMessages); }
private void LoggerManager_Logged(object sender, LoggedLoggerManagerEventArgs e) { if (e.LoggerMessage.LoggerLevel == LoggerLevel.Error && e.LoggerMessage.Error != null) { if (Application.Current != null) { Application.Current.Dispatcher.BeginInvoke(new Action(() => { var error = new ErrorReport(); error.Message = e.LoggerMessage.Error.Message; error.StackTrace = e.LoggerMessage.Error.StackTrace; error.Source = e.LoggerMessage.Error.Source; ErrorReportWindow window = new ErrorReportWindow(error); window.NoticeErrorChanged += (s, arg) => { var box = (CheckBox)s; option.NeedReportUnhandledErrors = box.IsChecked.Value; }; window.ShowDialog(); })); } } }