2011-12-05 8 views
2

私はdevexpressを使用してダイナミックな3次元円グラフを作成しました。私は本当にコントロール機能がどれほど良いかに感心しています。私は少し落ち込んだけど。 円グラフのポイントに、コードで設定した色が異なるようにしたいとします(これは後でパレットまたはコンボボックスのフォームを使用してユーザーによって変更されますが、まだわかりません)。残念ながら、私は自分のデータシリーズのポイントのためのカラーメソッドを得ることができません。c#devexpress piechartシリーズポイントの色の変更

ここでコメントアウト試みの質量を除いたコードです:

Series series1 = new Series("Series1", ViewType.Pie3D); 

     chartControl2.Series.Add(series1); 

     series1.DataSource = chartTable; 
     series1.ArgumentScaleType = ScaleType.Qualitative; 
     series1.ArgumentDataMember = "names"; 
     series1.ValueScaleType = ScaleType.Numerical; 
     series1.ValueDataMembers.AddRange(new string[] { "Value" }); 

     //series1.Label.PointOptions.PointView = PointView.ArgumentAndValues; 
     series1.LegendPointOptions.PointView = PointView.ArgumentAndValues; 
     series1.LegendPointOptions.ValueNumericOptions.Format = NumericFormat.Percent; 
     series1.LegendPointOptions.ValueNumericOptions.Precision = 0; 

     // Adjust the value numeric options of the series. 
     series1.Label.PointOptions.ValueNumericOptions.Format = NumericFormat.Percent; 
     series1.Label.PointOptions.ValueNumericOptions.Precision = 0; 

     // Adjust the view-type-specific options of the series. 
     ((Pie3DSeriesView)series1.View).Depth = 20; 
     ((Pie3DSeriesView)series1.View).ExplodedPoints.Add(series1.Points[0]); 
     ((Pie3DSeriesView)series1.View).ExplodedPoints.Add(series1.Points[1]); 
     ((Pie3DSeriesView)series1.View).ExplodedPoints.Add(series1.Points[2]); 
     ((Pie3DSeriesView)series1.View).ExplodedPoints.Add(series1.Points[3]); 
     ((Pie3DSeriesView)series1.View).ExplodedDistancePercentage = 20; 

     chartControl2.Legend.Visible = true; 

だから私はchartcontrol2.series1.pointようなものが必要[0] .color = color.blueは、このようなもの。

+0

あなたは 'Series1.point [0] .Color'' Series1.point [1] .Colorと、次にしてみてくださいました'..so on – V4Vendetta

+0

yes series1.point []のカラーメソッドはありません – lemunk

答えて

4

図面を参照してください。これを行うには、ChartControl.CustomDrawSeriesPointイベントを処理し、イベント引数を使用して描画パラメータの一部を変更することができます。

あなたfunctinalityを行うには、これらのイベントをご確認ください。..

How to: Custom Paint Series Points

ChartControl.CustomDrawSeries Event