2013-09-24 51 views
3

我有一個ASCX頁面和代碼後面的代碼看起來像這樣如何更改圖表控件中各個列的顏色?

private void CreateProjectsByRAG() 
    { 
     foreach (ProjectStatistic PR in repository.GetProjectByRAG()) 
     { 
      ProjectsByProjectTypePieChart.Series["series"].Points.AddXY(PR.Name, PR.Value); 
     } 

     ProjectsByProjectTypePieChart.Titles["Title1"].Text = "Projects by RAG Status"; 
     ProjectsByProjectTypePieChart.Series["series"].ChartType = SeriesChartType.Column;// Set the Pie width 
     ProjectsByProjectTypePieChart.Series["series"].Color = System.Drawing.Color.FromArgb(255, 0, 0); 
    } 

其產生的圖表,看起來像這樣

enter image description here

但我要的顏色列單獨讓他們看起來像這樣,我也希望列與標籤具有相同的顏色(所以不是隨機的)。

enter image description here

此外,如何訂購列?所以,我可以讓他們在綠色,琥珀色的順序,紅

回答

4

代碼爲

foreach (ProjectStatistic PR in repository.GetProjectByRAG()) 
     { 
      int index = ProjectsByProjectTypePieChart.Series["series"].Points.AddXY(PR.Name, PR.Value); 
      if (PR.Name == "Green") 
      { 
       ProjectsByProjectTypePieChart.Series["series"].Points[index].Color = System.Drawing.Color.Green; 
      } 

      if (PR.Name == "Amber") 
      { 
       ProjectsByProjectTypePieChart.Series["series"].Points[index].Color = System.Drawing.Color.Yellow; 
      } 

      if (PR.Name == "Red") 
      { 
       ProjectsByProjectTypePieChart.Series["series"].Points[index].Color = System.Drawing.Color.Red; 
      } 

     } 
相關問題