/// <summary> /// Add Rows to AnalysisResult object /// </summary> /// <param name="result"> /// <see cref="AnalysisResult"/> object /// </param> /// <returns> /// <see cref="AnalysisResult"/> updated object /// </returns> private AnalysisResult AddAnalysisResultRows(AnalysisResult result) { var maxNumberOfRows = Settings.Category.MaxNumberOfRows; if (maxNumberOfRows > 0 && yCategoryArray.Count > maxNumberOfRows) { var otherCategory = new List <AnalysisProcessingYCategoryValue>(); foreach (var categoryValue in yCategoryArray) { if (--maxNumberOfRows > 0) { var r = new AnalysisRow(result, categoryValue) as AnalysisRow; result.AddRow(r); } else { otherCategory.Add(categoryValue); } } var row = new AnalysisRow(result, otherCategory); result.AddRow(row); } else { foreach (var catVal in yCategoryArray) { var row = new AnalysisRow(result, catVal); result.AddRow(row); } } return(result); }