'宣言 Public Class XamReportPreview Inherits System.Windows.Controls.Control
public class XamReportPreview : System.Windows.Controls.Control
Private Sub XamReportPreviewSample() 'initialize controls Dim stackPanel As StackPanel = New StackPanel() stackPanel.Children.Add(XamDataGrid1) Dim docViewer As XamReportPreview = New XamReportPreview() stackPanel.Children.Add(docViewer) Dim progressInfo As ReportProgressControl = New ReportProgressControl() stackPanel.Children.Add(progressInfo) Window1.Content = stackPanel ' 1. Create Report object Dim reportObj As Report = New Report() ' 2. Create EmbeddedVisualReportSection section. ' Put the grid you want to print as a parameter of section's constructor Dim section As EmbeddedVisualReportSection = New EmbeddedVisualReportSection(XamDataGrid1) ' 3. Add created section to report's section collection reportObj.Sections.Add(section) ' Optional. If you have progress indicator set its Report property to created report progressInfo.Report = reportObj ' 4. Generate Preview docViewer.GeneratePreview(reportObj, False, True) 'Optional. Make XamReportPreciew content visible . It is true by default. docViewer.IsContentVisible = True ' 5. Call print method DocumentViewer doc = docViewer.DocumentViewer doc.Focus() End Sub
private void XamReportPreviewSample() { //initialize controls StackPanel stackPanel = new StackPanel(); stackPanel.Children.Add(XamDataGrid1); XamReportPreview docViewer = new XamReportPreview(); stackPanel.Children.Add(docViewer); ReportProgressControl progressInfo = new ReportProgressControl(); stackPanel.Children.Add(progressInfo); Window1.Content = stackPanel; // 1. Create Report object Report reportObj = new Report(); // 2. Create EmbeddedVisualReportSection section. // Put the grid you want to print as a parameter of section's constructor EmbeddedVisualReportSection section = new EmbeddedVisualReportSection(XamDataGrid1); // 3. Add created section to report's section collection reportObj.Sections.Add(section); // Optional. If you have progress indicator set its Report property to created report progressInfo.Report = reportObj; // 4. Generate Preview docViewer.GeneratePreview(reportObj, false, true); //Optional. Make XamReportPreciew content visible . It is true by default. docViewer.IsContentVisible = true; // 5. Call print method DocumentViewer doc = docViewer.DocumentViewer; doc.Focus(); }