LocalReport.Render-Methode (String, String, out String, out String, out String, out String[], out Warning[])
Processes the report and renders it in the specified format.
Namespace: Microsoft.Reporting.WinForms
Assembly: Microsoft.ReportViewer.WinForms (in microsoft.reportviewer.winforms.dll)
Syntax
'Declaration
'Usage
Parameter
- format
The format in which to render the report. This argument maps to a rendering extension. Supported formats include Microsoft Office Excel, PDF, and Image.
- deviceInfo
An XML string that contains the device-specific content that is required by the rendering extension specified in the format parameter. For more information about device information settings for specific output formats, see "Device Information Settings" in SQL Server Books Online.
- mimeType
[out] The MIME type of the rendered report.
- encoding
[out] The encoding used when rendering the contents of the report.
- fileNameExtension
[out] The file name extension used for the output file.
- streams
[out] The stream identifiers. You can use them to render external resources (images, for example) that are associated with the report.
- warnings
[out] An array of Warning objects that describes any warnings that occurred during report processing.
Rückgabewert
A Byte array of the report in the specified format.
Hinweise
The Render method can be used to export and print a report.
Beispiel
The following code example assumes a Windows Forms application with a ReportViewer control and a button. In this code example, a local report is loaded into and rendered in the control and then the Render method is used to export the report to Excel format.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Microsoft.Reporting.WinForms;
using System.IO;
namespace SampleCode
{
public partial class Form1 : Form
{
private DataTable LoadSalesData()
{
// Load data from XML file.
DataSet dataSet = new DataSet();
dataSet.ReadXml(@"c:\Reports\data.xml");
return dataSet.Tables[0];
}
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
this.reportViewer1.ProcessingMode = ProcessingMode.Local;
this.reportViewer1.LocalReport.ReportPath = @"c:\Reports\Report1.rdl";
reportViewer1.LocalReport.DataSources.Add(
new ReportDataSource("Sales", LoadSalesData()));
this.reportViewer1.RefreshReport();
}
private void button1_Click(object sender, EventArgs e)
{
Warning[] warnings;
string[] streamids;
string mimeType;
string encoding;
string extension;
byte[] bytes = reportViewer1.LocalReport.Render(
"Excel", null, out mimeType, out encoding, out extension,
out streamids, out warnings);
FileStream fs = new FileStream(@"c:\output.xls", FileMode.Create);
fs.Write(bytes, 0, bytes.Length);
fs.Close();
MessageBox.Show("Report exported to output.xls", "Info");
}
}
}
Imports Microsoft.Reporting.WinForms
Imports System.IO
Public Class Form1
Private Function LoadSalesData() As DataTable
'' Load data from XML file
Dim dataSet = New DataSet
dataSet.ReadXml("c:\Reports\data.xml")
Return dataSet.Tables(0)
End Function
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
ReportViewer1.ProcessingMode = ProcessingMode.Local
ReportViewer1.LocalReport.ReportPath = "c:\Reports\Report1.rdl"
Dim myDataSource = New ReportDataSource("Sales", LoadSalesData())
ReportViewer1.LocalReport.DataSources.Add(myDataSource)
Me.ReportViewer1.RefreshReport()
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim warnings As Warning() = Nothing
Dim streamids As String() = Nothing
Dim mimeType As String = Nothing
Dim encoding As String = Nothing
Dim extension As String = Nothing
Dim bytes As Byte()
bytes = ReportViewer1.LocalReport.Render("Excel", Nothing, mimeType, _
encoding, extension, streamids, warnings)
Dim fs As New FileStream("c:\output.xls", FileMode.Create)
fs.Write(bytes, 0, bytes.Length)
fs.Close()
MessageBox.Show("Report exported to output.xls", "Info")
End Sub
End Class
Siehe auch
Verweis
LocalReport-Klasse
LocalReport-Member
Microsoft.Reporting.WinForms-Namespace