private Collection <LoggerMessageViewModel> GetLoadLoggerMessage()
        {
            Collection <LoggerMessageViewModel> results = null;
            GetLoggerMessageWindow window = new GetLoggerMessageWindow();

            window.Owner = Application.Current.MainWindow;
            window.WindowStartupLocation = WindowStartupLocation.CenterOwner;
            if (window.ShowDialog().GetValueOrDefault())
            {
                results = new Collection <LoggerMessageViewModel>();
                foreach (LoggerMessage loggerMessage in window.ResultLoggerMessages)
                {
                    LoggerMessageViewModel loggerMessageViewModel = new LoggerMessageViewModel(loggerMessage);
                    loggerMessageViewModel.Time = DateTime.Now.Subtract(GetStartTime()).TotalSeconds;
                    results.Add(loggerMessageViewModel);
                }
            }
            return(results);
        }
Пример #2
0
        private void LoggerManager_Logging(object sender, LoggingLoggerManagerEventArgs e)
        {
            if (Application.Current != null)
            {
                Application.Current.Dispatcher.BeginInvoke(() =>
                {
                    if (startTime == DateTime.MinValue)
                    {
                        startTime = DateTime.Now;
                    }

                    if (IsCapture)
                    {
                        LoggerMessageViewModel loggerMessageViewModel = new LoggerMessageViewModel(e.LoggerMessage);
                        loggerMessageViewModel.Time = DateTime.Now.Subtract(GetStartTime()).TotalSeconds;
                        loggerMessages.Add(loggerMessageViewModel);
                        displayLoggerMessages.Add(loggerMessageViewModel);

                        LimiteLoggerMeesage();
                        Filter(new LoggerMessageFilterViewModel());
                    }
                }, System.Windows.Threading.DispatcherPriority.Background);
            }
        }