public
void
ProcessChart(
ObservableCollection<PcyaSimServiceReference.PCYAsimServiceHistoryItem> results)
{
if
(results ==
null
)
return
;
_data = results;
//If your setting the Chart only once these two lines are not needed:
radOASHistory.SeriesMappings.Clear();
radOASHistory.DefaultView.ChartArea.DataSeries.Clear();
//
foreach
(var hi
in
results)
//var is PcyaSimServiceReference.PCYAsimServiceHistoryItem
{
//DataSeries lineSeries = new DataSeries();
//lineSeries.Definition = new LineSeriesDefinition { ShowItemLabels = false, ShowPointMarks = false };
//foreach (CorporateBondCalculator.PcyaSimServiceReference.PCYAsimServiceHistoryRung item in hi.OAS)
//{
// lineSeries.Add(new Telerik.Windows.Controls.Charting.DataPoint() { YValue = item.Value, XValue = item.PriceDate.ToOADate() });
//}
SeriesMapping seriesMapping =
new
SeriesMapping();
seriesMapping.LegendLabel = hi.Description;
seriesMapping.SeriesDefinition =
/*lineSeries.Definition*/
new
LineSeriesDefinition { ShowItemLabels =
false
, ShowPointMarks =
false
};
seriesMapping.ItemMappings.Add(
new
ItemMapping(
"PriceDate"
, DataPointMember.XValue));
seriesMapping.ItemMappings.Add(
new
ItemMapping(
"Value"
, DataPointMember.YValue));
seriesMapping.ItemMappings.Add(
new
ItemMapping(
"Label"
, DataPointMember.Label));
/*NEW*/
seriesMapping.ItemsSource = hi.OAS;
radOASHistory.SeriesMappings.Add(seriesMapping);
radOASHistory.DefaultView.ChartArea.AxisX.IsDateTime =
true
;
radOASHistory.DefaultView.ChartArea.AxisX.LayoutMode =
AxisLayoutMode.Inside;
radOASHistory.DefaultView.ChartArea.AxisX.DefaultLabelFormat =
"MM/dd/yyyy"
;
radOASHistory.DefaultView.ChartArea.AxisX.LabelRotationAngle = 45;
//radOASHistory.DefaultView.ChartArea.DataSeries.Add(lineSeries);
}
}