private void GraphicTransactionsChart(DataView dataView) { this.transactionsChart.Series.Clear(); List <DataRowView> dataRowFiltered = new List <DataRowView>(); foreach (DataRowView row in dataView) { dataRowFiltered.Add(row); } var codeGrouping = dataRowFiltered.GroupBy(row => row[nameof(ResumeTransactionDTO.Code)]); foreach (var transactionCodes in codeGrouping) { string groupName = transactionCodes.Key.ToString(); this.transactionsChart.Series.Add(groupName); var dataRows = transactionCodes.Select(x => x).ToList(); foreach (var dateTimeTransaction in dataRows) { DateTime dt = CastObject.ToDateTime(dateTimeTransaction[nameof(ResumeTransactionDTO.Date)]); double amount = CastObject.ToDouble(dateTimeTransaction[nameof(ResumeTransactionDTO.Amount)]); this.transactionsChart.Series[groupName].Points.AddXY(dt, amount); } } }