using System; using System.Windows; namespace WpfApp { /// /// Interaction logic for MainWindow.xaml /// public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); reportViewer.Load += ReportViewer_Load; } private bool isReportViewerLoaded; private void ReportViewer_Load(object sender, EventArgs e) { if (!isReportViewerLoaded) { Microsoft.Reporting.WinForms.ReportDataSource reportDataSource1 = new Microsoft.Reporting.WinForms.ReportDataSource(); WpfApp.CrmDatabaseDataSet2 dataset = new CrmDatabaseDataSet2(); dataset.BeginInit(); reportDataSource1.Name = "CrmDatabaseDataSet"; reportDataSource1.Value = dataset.EmployeeTable; this.reportViewer.LocalReport.DataSources.Add(reportDataSource1); //this._reportViewer.LocalReport.ReportPath = "../../Report4.rdlc"; this.reportViewer.LocalReport.ReportPath = "Report4.rdlc"; dataset.EndInit(); //fill data into WpfApplication4DataSet WpfApp.CrmDatabaseDataSet2TableAdapters.EmployeeTableTableAdapter employeeTableAdapter = new WpfApp.CrmDatabaseDataSet2TableAdapters.EmployeeTableTableAdapter(); employeeTableAdapter.ClearBeforeFill = true; employeeTableAdapter.Fill(dataset.EmployeeTable); reportViewer.RefreshReport(); isReportViewerLoaded = true; } } } }