2011-06-20 11 views
1

我的目標:返回座標和形狀,以便我可以將自己的自定義懸停文本滾動到.NET Charting圖像。如果我使用ASP.NET控件(它同時呈現圖像標記和HTML標記;但是,我處於MVC世界中,因此我將圖表作爲二進制圖像返回),這不會造成問題。要點:ASP.NET Charting - MapAreas將圖表作爲二進制數據返回時爲空

public virtual FileStreamResult Chart() 
{ 
    //Set up chart 
    Chart Chart1 = new Chart(); 
    Chart1.RenderType = RenderType.ImageTag; 

    Chart1.ChartAreas.Add(new ChartArea("First")); 

    //Add some lovely data 
    Series s = new Series(); 
    s.Name = "Tasks"; 
    s.Points.AddXY("Task 1", 5, 8); 
    s.ChartArea = "First"; 
    s.ChartType = SeriesChartType.RangeBar; 

    //Add a tooltip - This **should** make the MapAreas collection populate. 
    s.ToolTip = "Hello World"; 

    Chart1.Series.Add(s); 

    if (Chart1.MapAreas.Count == 0) 
     CryRiver(); //Always executed. :*(

    //Output image as FileStreamResult 
    //... 
} 

問題:。不管我做什麼,我不能讓MapAreas集合包含任何內容,我相信這是因爲座標沒有得到填充,直到圖像實際上呈現

將圖像渲染爲二進制時,如何獲取繪製數據的地圖區域座標?

謝謝!

回答

0

找到了答案;不知道它是否是最好的。

在Chart1.MapAreas被填充之前,必須調用Chart1.RenderControl();

相關問題