Hi Telerik,
In My chart I have multiple Y axis,
I am trying to binding with one barseriesdefination and other with LineSeriesDefination each having saparate Itemsource.
But there is problem of initilization of series.
If on this senario any solution available please share.
I attached source Code.
Thanks in advance.
public
Test()
{
InitializeComponent();
this
.Loaded +=
new
RoutedEventHandler(GroupMultiYAxes_Loaded);
this
.RadChart.DataBound +=
new
EventHandler<ChartDataBoundEventArgs>(RadChart_DataBound);
}
void
RadChart_DataBound(
object
sender, ChartDataBoundEventArgs e)
{
RadChart.DefaultView.ChartArea.DataSeries[0].Definition.AxisName =
"Secondary"
;
}
void
GroupMultiYAxes_Loaded(
object
sender, RoutedEventArgs e)
{
AxisY additionalAxis =
new
AxisY();
additionalAxis.AxisName =
"Secondary"
;
additionalAxis.AutoRange =
false
;
additionalAxis.AddRange(0, 30, 10);
RadChart.DefaultView.ChartArea.AdditionalYAxes.Add(additionalAxis);
this
.SetMappings(RadChart);
RadChart.ItemsSource =
new
List<MyData2>() {
new
MyData2() { MyProp1 =
"A"
, Value=5, Cost=10},
new
MyData2() { MyProp1 =
"A"
, Value=6, Cost=20},
new
MyData2() { MyProp1 =
"B"
, Value=7, Cost=10},
new
MyData2() { MyProp1 =
"B"
, Value=8, Cost=20},
};
}
private
void
SetMappings(RadChart chart)
{
SeriesMapping seriesMapping =
new
SeriesMapping();
seriesMapping.SeriesDefinition =
new
BarSeriesDefinition();
seriesMapping.CollectionIndex = 0;
seriesMapping.GroupingSettings.GroupDescriptors.Add(
new
ChartGroupDescriptor(
"MyProp1"
));
ItemMapping itemMapping =
new
ItemMapping();
itemMapping.DataPointMember = DataPointMember.YValue;
itemMapping.FieldName =
"Value"
;
seriesMapping.ItemMappings.Add(itemMapping);
SeriesMapping seriesMapping1 =
new
SeriesMapping();
seriesMapping1.SeriesDefinition =
new
LineSeriesDefinition();
seriesMapping1.CollectionIndex = 1;
seriesMapping1.SeriesDefinition.AxisName =
"Secondary"
;
ItemMapping itemMapping1 =
new
ItemMapping();
itemMapping1.DataPointMember = DataPointMember.YValue;
itemMapping1.FieldName =
"Cost"
;
seriesMapping.ItemMappings.Add(itemMapping1);
chart.SeriesMappings.Add(seriesMapping);
chart.SeriesMappings.Add(seriesMapping1);
}
}
public
class
MyData2
{
public
string
MyProp1 {
get
;
set
; }
public
int
Value {
get
;
set
; }
public
int
Cost {
get
;
set
; }
}
}