2010-12-20 4 views
0

.NETチャートDatamanipulator

 chart.Series[0].ChartType = SeriesChartType.Pie; 
     foreach (Order order in orderCollection) { 
      // If I set point.LegendText = order.UserName, .Group will erase it 
      chart.Series[0].Points.AddXY(order.UserName, order.Total); 
     } 

     chart.DataManipulator.Sort(PointSortOrder.Ascending, "X", "Series1"); 
     chart.DataManipulator.Group("SUM", 1, IntervalType.Months, "Series1"); 

これがうまく機能は、それがトップ10のユーザーと円グラフを作成しますそれらの総注文合計を示す。 DataPointsのlegendtextをorder.UserNameプロパティに設定したいと思います。問題は、DataManipulator.GroupがシリーズDataPointを上書きすることです。したがって、foreachループでlegendtextを設定すると、グループ呼び出しの後に消去されます。

グループコールの後に、DataPointの凡例を設定するための正しいUserNameを取得する方法がありません。

この状況に最適なアプローチは何ですか?

答えて

1

解決策として、LINQを使用してデータソースをグループ化し、DataManipulatorの使用を中止しました。