如何将AjaxToolkit控件线图导出到Excel

时间:2016-07-27 09:45:55

标签: c# asp.net gridview ajaxcontroltoolkit linechart

在应用程序中我有网格视图和Ajax Toolkit控制线图我需要将网格视图和线图导出到Excel工作表(开放式办公室/天秤座办公室)。我在导出按钮中尝试了一些代码,但是网格视图导出的是什么,但是折线图不会导出到Excel。我的页面显示为[my chart image]  通过单击导出按钮,然后只有网格视图将导出到Excel但不会导出它不会导出。我需要的是图表应该导出到Excel。怎么做

我试过的代码是:
的.aspx:

 <cc1:LineChart ID="LineChart1" runat="server" ChartHeight="300"  ChartWidth="900" ChartType="Basic" ChartTitleColor="#0E426C" Visible="true" CategoryAxisLineColor="#D08AD9" ValueAxisLineColor="#D08AD9" BaseLineColor="#A156AB"></cc1:LineChart>

的.cs:

 protected void btnExport_Click(object sender, EventArgs e)
    {

        Response.ClearContent();
        Response.Buffer = true;
        Response.AddHeader("content-disposition", string.Format("attachment; filename={0}", "filename.xls"));
        Response.ContentType = "application/ms-excel";
        StringWriter sw = new StringWriter();
        HtmlTextWriter htw = new HtmlTextWriter(sw); 
        base.OnPreRender(e);
        ScriptManager sm = ScriptManager.GetCurrent(Page);
        sm.RegisterScriptControl(LineChart1);
        LineChart1.Visible = true;          
       for (int i = 0; i < grdview1.HeaderRow.Cells.Count; i++)
        {
           grdview1.HeaderRow.Cells[i];
        }
        grdview1.RenderControl(htw);
        LineChart1.RenderControl(htw);
        Response.Write(sw.ToString());
        Response.End();        
    }

public override void VerifyRenderingInServerForm(Control control)
    {
        /* Verifies that the control is rendered */
    }

我添加了OnPreRender()来注册scriptmanager控件

    protected override void OnPreRender(EventArgs e)
    {
        /* Verifies that the control is rendered */
        base.OnPreRender(e);
        ScriptManager scriptManager = ScriptManager.GetCurrent(this.Page);

        if (scriptManager == null)
        {

            scriptManager = new ScriptManager();

            scriptManager.ID = "ScriptManager1";

            scriptManager.EnablePartialRendering = true;

            Controls.AddAt(0, scriptManager);

        }
    }

任何人都可以帮我解决如何导出线图。

谢谢

1 个答案:

答案 0 :(得分:1)

不,您无法导出LineChart。

相关问题