Ошибка отчета C # при вызове нескольких отчетов из проекта WPF в одном решении - PullRequest
0 голосов
/ 15 ноября 2011

В настоящее время я пытаюсь использовать несколько отчетов, чтобы при выборе пользователем элемента из контекстного меню в приложении WPF появлялась форма отчета с выбранным отчетом. если в контекстном меню выбран еженедельный отчет, в форме отчетов должен отображаться еженедельный отчет.

Я не получаю ошибок во время компиляции, но в моем средстве просмотра отчетов отображается следующее «Произошла ошибка при локальной обработке отчета. Определение отчета для Report 'Reports.Report3.rdlc' не указано».

Я использую приведенный ниже код при нажатии на пункт контекстного меню

Reports.Form1 Reports = new Reports.Form1();
                Reports.reportViewer1.Reset();
                Reports.reportViewer1.LocalReport.DataSources.Clear();
                ReportDataSource reportDataSource1 = new ReportDataSource();
                Reports.SpecificationsTableAdapter.Fill(Reports.RocketToolsDataSet.Specifications);
                reportDataSource1.Name = "TestDataSet";
                reportDataSource1.Value = Reports.SpecificationsBindingSource;
                Reports.reportViewer1.LocalReport.DataSources.Add(reportDataSource1);
                Reports.reportViewer1.LocalReport.ReportEmbeddedResource = "Reports.Report3.rdlc";
                Reports.reportViewer1.Name = "reportViewer1";
                Reports.reportViewer1.RefreshReport();
                Reports.Show();
                loading.Close();

Имя проекта для формы отчета называется «Отчеты», а имя проекта для приложения WPF - «RocketTools». Я ссылался на проект отчетов в моем проекте WPF. Если отчеты являются настройкой по умолчанию при загрузке в форме отчета, он загружается нормально. Но когда я пытаюсь изменить настройки загрузки формы в моем приложении WPF, я получаю сообщение об ошибке выше.

Пожалуйста, кто-нибудь может мне помочь

1 Ответ

0 голосов
/ 18 ноября 2011

Решил проблему, используя windowsformhosting вместо ссылки на другой проект.

XAML-код можно увидеть ниже, а затем вручную создать адаптеры таблиц и наборы данных, добавив новые элементы в проект и используя код в моем оригинале.вопрос при создании экземпляра окна отчетности.

<Window x:Class="RocketTools.Reports"
        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="Reports" Height="691" Width="1117" Loaded="Window_Loaded" Closed="Window_Closed" WindowStartupLocation="CenterOwner">
    <Grid x:Name="ReportGrid">
        <WindowsFormsHost Margin="12" Name="windowsFormsHost1">
            <viewer:ReportViewer x:Name="viewerInstance"></viewer:ReportViewer>
        </WindowsFormsHost>
    </Grid> </Window>
...