本指南演示了如何通过一次按钮单击,生成图表并在网页中显示。 完成此任务的另一种可选的方式,请参阅 如何: 在 Callback 期间把图表添加到 ASPxCallbackPanel (运行时刻示例)

为了说明如何完成此任务,执行下列操作。

  1. 新建一个或者打开现有的 ASP.NET Web 应用程序 (Visual Studio 2005、2008 或 2010)。

  2. 切换到 Default.aspx 页面的 设计 视图,并从 DX.10.2: Common Controls 工具箱标签页中,把 ASPxButton 控件拖放到页面上。 我们将接管它的 Click 事件来生成 Web 图表。

  3. 把所需的 程序集 添加到项目的“引用”列表中。

    注意,如果更喜欢自动添加程序集 (通过把 WebChartControl 实例拖放到页面上),那么这会影响 Web 应用程序的 Web.config 文件。 要了解所作出的更改,请参阅 添加 Web 图表

  4. 现在,双击 ASPxButton1,接管它的 Click 事件。 把下列代码添加到事件处理程序中。

    注意,在访问动态创建的 WebChartControl 的元素和属性之前,应该把它添加到 Page.Form.Controls 集合中。

    C#CopyCode image复制代码
    using System;
    using DevExpress.XtraCharts;
    using DevExpress.XtraCharts.Web;
    // ...
    
    protected void ASPxButton1_Click(object sender, EventArgs e) {
        // Create a WebChartControl instance.
        WebChartControl WebChartControl1 = new WebChartControl();
    
        // Add the chart to the form.
        // Note that a chart isn't initialized until it's added to the form's collection of controls.
        this.form1.Controls.Add(WebChartControl1);
    
        // Create a line series and add points to it.
        Series series1 = new Series("My Series", ViewType.Line);
        series1.Points.Add(new SeriesPoint("A", new double[] { 2 }));
        series1.Points.Add(new SeriesPoint("B", new double[] { 7 }));
        series1.Points.Add(new SeriesPoint("C", new double[] { 5 }));
        series1.Points.Add(new SeriesPoint("D", new double[] { 9 }));
    
        // Add the series to the chart.
        WebChartControl1.Series.Add(series1);
    }
    
    Visual BasicCopyCode image复制代码
    Imports System
    Imports DevExpress.XtraCharts
    Imports DevExpress.XtraCharts.Web
    ' ...
    
    Protected Sub ASPxButton1_Click(ByVal sender As Object, ByVal e As EventArgs)
        ' Create a WebChartControl instance.
        Dim WebChartControl1 As New WebChartControl()
    
        ' Add the chart to the form.
        ' Note that a chart isn't initialized until it's added to the form's collection of controls.
        Me.form1.Controls.Add(WebChartControl1)
    
        ' Create a line series and add points to it.
        Dim series1 As New Series("My Series", ViewType.Line)
        series1.Points.Add(New SeriesPoint("A", New Double() { 2 }))
        series1.Points.Add(New SeriesPoint("B", New Double() { 7 }))
        series1.Points.Add(New SeriesPoint("C", New Double() { 5 }))
        series1.Points.Add(New SeriesPoint("D", New Double() { 9 }))
    
        ' Add the series to the chart.
        WebChartControl1.Series.Add(series1)
    End Sub
    

运行 Web 应用程序,并单击 ASPxButton1 按钮来查看结果图表。

CodeCentralShow Me

在 DevExpress Code Central 数据库中可以找到完整的示例项目,网址是 http://www.devexpress.com/example=E1171。 取决于目标平台类型 (ASP.NET、WinForms 等),可以在线运行本示例,或者下载自动可执行的示例。

Expand image参阅