CodeCentralShow Me

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

下面的示例展示了如何把报表导出为 XLS 格式。 要完成此任务,需使用 XtraReport.ExportToXls 方法。 此示例也演示了当报表被导出为 XLS 时,哪些特定的 XlsExportOptions 可能被使用。

为了使此示例工作,首先需要 添加新报表 (命名为 XtraReport1) 到项目中,拖放一些报表控件到报表中,然后执行下面的代码 (例如,在窗体上任一按钮的 Button.Click 事件处理程序中)。 也要注意,如果想让结果文件自动被系统中默认的用于打开 *.xls 文件的程序打开,那么可以调用在本例中也展示了的 StartProcess 方法。

C#CopyCode image复制代码
 (Form1.cs)
using System;
using System.Windows.Forms;
using System.Diagnostics;
using DevExpress.XtraPrinting;
using DevExpress.XtraReports.UI;
// ...


namespace ExportToXlsCS {
    public partial class Form1 : Form {
        public Form1() {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e) {
            // A path to export a report.
            string reportPath = "c:\\Test.xls";

            // Create a report instance.
            XtraReport1 report = new XtraReport1();

            // Get its XLS export options.
            XlsExportOptions xlsOptions = report.ExportOptions.Xls;

            // Set XLS-specific export options.
            xlsOptions.ShowGridLines = true;
            xlsOptions.TextExportMode = TextExportMode.Value;

            // Export the report to XLS.
            report.ExportToXls(reportPath);

            // Show the result.
            StartProcess(reportPath);
        }

        // Use this method if you want to automaically open
        // the created XLS file in the default program.
        public void StartProcess(string path) {
            Process process = new Process();
            try {
                process.StartInfo.FileName = path;
                process.Start();
                process.WaitForInputIdle();
            }
            catch { }
        }
    }
}
Visual BasicCopyCode image复制代码
 (Form1.vb)
Imports Microsoft.VisualBasic
Imports System
Imports System.Windows.Forms
Imports System.Diagnostics
Imports DevExpress.XtraPrinting
Imports DevExpress.XtraReports.UI
' ...


Namespace ExportToXlsCS
    Partial Public Class Form1
        Inherits Form
        Public Sub New()
            InitializeComponent()
        End Sub

        Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles button1.Click
            ' A path to export a report.
            Dim reportPath As String = "c:\Test.xls"

            ' Create a report instance.
            Dim report As New XtraReport1()

            ' Get its XLS export options.
            Dim xlsOptions As XlsExportOptions = report.ExportOptions.Xls

            ' Set XLS-specific export options.
            xlsOptions.ShowGridLines = True
            xlsOptions.TextExportMode = TextExportMode.Value

            ' Export the report to XLS.
            report.ExportToXls(reportPath)

            ' Show the result.
            StartProcess(reportPath)
        End Sub

        ' Use this method if you want to automaically open
        ' the created XLS file in the default program.
        Public Sub StartProcess(ByVal path As String)
            Dim process As New Process()
            Try
                process.StartInfo.FileName = path
                process.Start()
                process.WaitForInputIdle()
            Catch
            End Try
        End Sub
    End Class
End Namespace

Expand image参阅