Я пытался использовать средство просмотра отчетов, которое поставляется с VS2010 в WPF. Я создал отчет и протестировал то же самое с приложением Windows, оно работает. Затем я использовал тот же файл RDLC в WPF с тем же набором параметров, но он не работает. Код, который я использую, как показано ниже MainWindow.xaml.cs
public MainWindow()
{
ObjectModel DataObject = new ObjectModel();
DataObject.SetEPSDetails();
WindowsFormsHost host = new WindowsFormsHost();
ReportViewer RptViewer = new ReportViewer();
host.Child = RptViewer;
Grid HostGrid = this.FindName("GrdRow") as Grid;
HostGrid.Children.Add(host);
RptViewer.ProcessingMode = ProcessingMode.Local;
RptViewer.LocalReport.ReportEmbeddedResource = "RDLWPF.PrintPreview.rdlc";
RptViewer.LocalReport.SetParameters(new Microsoft.Reporting.WinForms.ReportParameter("Payer", DataObject.Payer));
RptViewer.LocalReport.SetParameters(new Microsoft.Reporting.WinForms.ReportParameter("ValueDate", DataObject.ValueDate));
RptViewer.LocalReport.SetParameters(new Microsoft.Reporting.WinForms.ReportParameter("FileName", DataObject.FileName));
RptViewer.LocalReport.SetParameters(new Microsoft.Reporting.WinForms.ReportParameter("Description", DataObject.Description));
RptViewer.LocalReport.SetParameters(new Microsoft.Reporting.WinForms.ReportParameter("PrintedDate", DataObject.PrintDate));
RptViewer.LocalReport.SetParameters(new Microsoft.Reporting.WinForms.ReportParameter("FileLastUpdated", DataObject.FileLastUpdated));
RptViewer.LocalReport.DataSources.Add(new Microsoft.Reporting.WinForms.ReportDataSource("FileDetails", DataObject.EPSDetails));
RptViewer.RefreshReport();
}
Xaml, как показано ниже. Mainwindow.Xaml
<Window x:Class="RDLWPF.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:viewer="clr-namespace:Microsoft.Reporting.WinForms;assembly=Microsoft.ReportViewer.WinForms"
Title="MainWindow" Height="350" Width="525" AllowsTransparency="False" >
<Grid x:Name="GrdRow">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"></RowDefinition>
</Grid.RowDefinitions>
</Grid>
Я только что получил пустое окно XAML. Элемент управления отчетом также не отображается. Я знаю, что делаю ошибку, но не могу найти, что это такое. Есть ли кто-нибудь, кто может исправить это для меня. Кроме того, если кто-то может выслать мне пример кода в MVVM appraoch, это было бы здорово
Спасибо и всего наилучшего
Venkatesh