public AcErrorSolutionSelector(AcError acError) { InitializeComponent(); DataContext = this; AcError = acError; Buttons = new[] { CancelButton }; if (acError.BaseException != null) { ErrorMessage = string.Format(AppStrings.AcError_StackTrace, acError.BaseException); } else { Solutions = acError.GetSolutions().ToList(); if (Solutions.Count == 0) { ErrorMessage = AppStrings.AcError_SolutionsNotFound; } else { SelectedSolution = Solutions.First(); SimilarErrors = Solutions.OfType<IMultiSolution>().Any() ? GetNearestErrors(acError).Where(x => x.Type == acError.Type).ApartFrom(acError).ToList() : new List<IAcError>(); MultiAppliable = SimilarErrors.Any(); } } }