0

我正在开发一个 ASP.net/C# 应用程序,我需要执行以下操作:

我的问题是如何呈现在 C# 中动态创建的 Chart 控件(.net4 附带的控件)和 HTML 字符串?

我的意思是:

我在 C# 中动态创建图表

  //CREATE THE CHART
    Chart Chart1 = new Chart();

  //BIND THE DATA TO THE CHART
    Chart1.Series.Add(new Series());
    Chart1.Series[0].Points.DataBindXY(xName, yVal);

  //SET THE CHART TYPE TO BE PIE
    Chart1.Series[0].ChartType = System.Web.UI.DataVisualization.Charting.SeriesChartType.Pie;
    Chart1.Series[0]["PieLabelStyle"] = "Outside";
    Chart1.Series[0]["PieStartAngle"] = "-90";


  //ADD A PLACE HOLDER CHART AREA TO THE CHART
  //SET THE CHART AREA TO BE 3D
    Chart1.ChartAreas.Add(new ChartArea());
    Chart1.ChartAreas[0].Area3DStyle.Enable3D = true;

  //ADD A PLACE HOLDER LEGEND TO THE CHART
  //DISABLE THE LEGEND
    Chart1.Legends.Add(new Legend());
    Chart1.Legends[0].Enabled = false;

然后我想将它渲染为 HTML 字符串并返回它。

我想要这个的原因是因为我使用 AJAX Jquery 来调用将图表作为 HTMl 字符串并将其附加到 'ChartDiv' div 元素的函数,以便将其显示为图表

        $.ajax({
            type: "POST",
            url: "Service/RPCWebService.asmx/GetHTMLRenderForCountry",
            dataType: "json",
            async: true,
            data: "{'CountryCode':'" + countryCode + "'}",
            contentType: "application/json; charset=utf-8",
            success: function (data) {
                $("#ChartDiv").append(data.d);

            },
            error: function (XMLHttpRequest, textStatus, errorThrown) {
                alert(errorThrown);
            }
        });

非常感谢您的帮助

4

1 回答 1

-1

看一下图表控件的 RenderControl 方法。下面是使用 RenderControl 将控件呈现为字符串的示例。 http://blogs.x2line.com/al/articles/859.aspx

于 2012-07-04T14:02:29.823 回答