public MainWindow() { InitializeComponent(); AppDomain.CurrentDomain.UnhandledException += ExceptionHandler; _graphSettings = new GraphSettings(); _collectSettings = new CollectSettings(); DataContext = this; _keyHooker.SetHook(); _keyHooker.OnHook += OnHook; m_SaveManager = new SaveManager(); m_OpenManager = new OpenManager(); _graphfileextensions = new Dictionary <string, Saver> { { "graphics files (*.grph)|*.grph", new BinSaver() } }; var serializer = new XmlSerializer(typeof(List <string>)); if (File.Exists(AppDomain.CurrentDomain.BaseDirectory + "Filters.xml")) { using (var filestream = new FileStream("Filters.xml", FileMode.Open)) { _collectSettings.FilterList = (List <string>)serializer.Deserialize(filestream); } } else { _collectSettings.FilterList = new List <string>(); } var zedGraph = (ZedGraphControl)WinHost.Child; zedGraph.GraphPane.CurveList.Clear(); GraphPane pane = zedGraph.GraphPane; pane.Title.Text = ""; pane.XAxis.Title.Text = ""; pane.YAxis.Title.Text = ""; dg_Data.EnableColumnVirtualization = true; dg_Data.EnableRowVirtualization = true; Ordinats = new ObservableCollection <CheckedListItem <string> >(); TableColumns = new ObservableCollection <CheckedListItem <string> >(); lb_Measures.ItemsSource = Ordinats; lb_Columns.ItemsSource = TableColumns; _recorders = new[] { new FlightDataRecorder("http://127.0.0.1:8111/state", true, _collectSettings.FailureDelay), new FlightDataRecorder("http://127.0.0.1:8111/indicators", false, _collectSettings.FailureDelay) }; m_Manager = new FdrManager(_recorders, _collectSettings.RequestInterval); m_DataProcessingHelper = new DataProcessingHelper(m_Manager); m_DataProcessingHelper.GraphControl = (ZedGraphControl)WinHost.Child; m_DataProcessingHelper.DataGrid = dg_Data; m_DataProcessingHelper.CollectSettings = _collectSettings; m_DataProcessingHelper.GraphSettings = _graphSettings; m_Manager.OnStartDataCollecting += OnStartNewDataCollecting; m_Manager.OnDataCollected += OnDataCollected; m_Manager.OnTotalFailure += OnFailure; m_Manager.OnRecorderFailure += OnRecorderFailure; m_CompareHelper = new CompareHelper() { GraphControl = (ZedGraphControl)wh_Compare.Child, GraphSettings = _graphSettings, LbSources = lb_Compare_Sources, LbOdinates = lb_Compare_Measures, CbAbscissa = cb_Compare_Abscissa }; }