To reproduce:
- Add two donut series and set their RadiusFactor so both series can be seen.
- Add ChartSelectionController.
- You will be able to select points from the firs series only.
Workaround:
class MyPieRenderer : PieRenderer
{
public MyPieRenderer(PieArea area) : base(area)
{
}
public override DataPoint HitTest(int x, int y)
{
if (this.DrawParts.Count > 0)
{
foreach (var item in this.DrawParts)
{
if (item is PieSeriesDrawPart)
{
Dictionary<PieDataPoint, GraphicsPath> paths = ((PieSeriesDrawPart)item).PointPaths;
foreach (PieDataPoint point in paths.Keys)
{
GraphicsPath path = new GraphicsPath();
paths.TryGetValue(point, out path);
if (path != null)
{
if (path.IsVisible(x, y))
{
return point;
}
}
}
}
}
}
return null;
}
}
private void RadChartView1_CreateRenderer(object sender, ChartViewCreateRendererEventArgs e)
{
e.Renderer = new MyPieRenderer((PieArea)e.Area);
}