2011-11-29 2 views
1

Я хочу сохранить изображение из графика графика. Я использую следующую строку.Сохранить изображение, используя диаграмму .net

chart.SaveImage("D:\\mypic.png", System.Web.UI.DataVisualization.Charting.ChartImageFormat.Png); 

, но у меня есть проблема:

enter image description here

Вот мой код.

protected void btnBar_Click(object sender, EventArgs e) 
{ 
    string degerler = txtDeger.Text; 
    ArrayList array = new ArrayList(); 

    if (Convert.ToInt32(TextBox2.Text) > Convert.ToInt32(TextBox1.Text)) 
    { 
     Label3.Text = "TopNCount sayısı büyük olamaz..."; 
    } 
    else 
    { 
     Label3.Text = ""; 

     for (int i = 1; i < Convert.ToInt32(TextBox1.Text) + 1; i++) 
     { 
      array.Add(Convert.ToInt32(degerler.Split(',')[i - 1])); 
     } 

     chart.ChartType = myChart.ChartTypes.Bar; 
     chart.TopNCount = Convert.ToInt32(TextBox2.Text); 
     chart.DataSource = array; 
     chart.DataBind(); 
     chart.SaveImage("D:\\mypic.png", System.Web.UI.DataVisualization.Charting.ChartImageFormat.Png); 
     this.Controls.Add(chart);  
    } 
} 
+0

Вы используете System.Windows.Forms.DataVisualization.Charting.Chart? –

ответ

1

Кто-то имел эту проблему:

http://social.msdn.microsoft.com/Forums/en/MSWinWebChart/thread/6ca0a897-4ffe-4c67-851e-6002ee4af19d

Кажется, что элемент управления диаграммой не смог найти фон, используемый для диаграммы.

Если это проблема, возможно, вы можете сообщить о некорректном сообщении об ошибке на веб-сайте Microsoft Connect.

1

Я предполагаю, что вы не можете сохранить диаграмму в качестве изображения, потому что ничего не было визуализировано. попытайтесь подключить к Init/Load/DataBound событиям и попытаться сохранить их оттуда.

EDIT

попробуйте следующее:

chart.DataBound += (sender, args) => ((Chart)sender).SaveImage("D:\\mypic.png", System.Web.UI.DataVisualization.Charting.ChartImageFormat.Png); 

или

chart.Load += (sender, args) => ((Chart)sender).SaveImage("D:\\mypic.png", System.Web.UI.DataVisualization.Charting.ChartImageFormat.Png); 
+0

привет, я не могу понять, о чем вы говорите. можете ли вы дать мне больше информации. и диаграмма - diplay в файле aspx, но не сохраняет. – TheMuyu

Смежные вопросы