public void LoadFiles(DependencyObject aExecUIElementToRefresh) { if (!LoadRunning) { SQLEvents.Clear(); SQLEventsLoadOK.Clear(); SQLEventsLoadFailed.Clear(); SQLExecuted.Clear(); SQLExecutionOK.Clear(); SQLExecutionFailed.Clear(); LoadErrorCount = 0; FirstExecutedIndex = -1; LastExecutedIndex = -1; try { LoadRunning = true; LoadProgressValue = 0; LoadProgressText = " "; LoadErrorText = " "; try { LoadProgressValue = 0; for (int i = 0; i < FilePaths.Count(); i++) { LoadSQLEvents(i, aExecUIElementToRefresh); if (!LoadRunning) { break; } } } catch (Exception e) { System.Windows.Forms.MessageBox.Show(e.Message); } } finally { try { LoadProgressColor = "Yellow"; LoadProgressText = "Sorting..."; Refresh(aExecUIElementToRefresh); ChronologyCheck(aExecUIElementToRefresh); } finally { FirstExecutedIndex = 0; LastExecutedIndex = SQLEvents.Count - 1; LoadProgressColor = "Green"; LoadProgressText = SQLEvents.Count() + " loaded."; Refresh(aExecUIElementToRefresh); System.Windows.Forms.MessageBox.Show("Loaded " + SQLEvents.Count + " SQL events." + Environment.NewLine + LoadErrorCount + " errors."); LoadRunning = false; RaisePropertyChanged("Loaded"); } } } }