using System;
using System.Collections.Generic;
using System.Drawing;
using System.Drawing.Imaging;
using System.Drawing.Printing;
using System.IO;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using DevExpress.XtraEditors;
using Microsoft.Reporting.WinForms;
//....
public static void Imprimir(LocalReport report,string nomeImpressora)
{
string deviceInfo =
"<DeviceInfo>" +
" <OutputFormat>EMF</OutputFormat>" +
" <PageWidth>210mm</PageWidth>" +
" <PageHeight>297mm</PageHeight>" +
" <MarginTop>0mm</MarginTop>" +
" <MarginLeft>0mm</MarginLeft>" +
" <MarginRight>0mm</MarginRight>" +
" <MarginBottom>0mm</MarginBottom>" +
"</DeviceInfo>";
Warning[] warnings;
report.Render("Image", deviceInfo, CreateStream, out warnings);
foreach (Stream stream in m_streams)
stream.Position = 0;
Print(nomeImpressora);
if (m_streams != null)
{
foreach (Stream stream in m_streams)
stream.Close();
m_streams = null;
}
}
PrintDialog tela = new PrintDialog();
string nomeImpressora = "";
if (tela.ShowDialog() != DialogResult.OK)
return;
nomeImpressora = tela.PrinterSettings.PrinterName;
LocalReport relatorio = new LocalReport();
relatorio.ReportEmbeddedResource = "relatorio.rdlc";
Imprimir(relatorio, nomeImpressora);