C# создание отчета программно

Я хочу создать отчет, используя либо Crystal reports, либо RDLC, на самом деле не имеет значения. Я могу получить все источники данных вместе как серию динамически генерируемых текстовых полей и т. д., Но как добавить это в отчет?

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

любые хорошие введения, которые охватывают не-волшебников для Crystal Отчеты были бы потрясающими.

2 ответов


каждый источник данных вашего отчета имеет имя (меню report - >datasources, это может быть не точно, потому что мой vs не на английском языке).

предположим, что одним из ваших источников данных является prj_folder_classSample, а classSample-класс вашего проекта. Затем нужно добавить список в отчет.

давайте сделаем это.

List<classSanple> lst = new List<classSample>
lst.Add(...) //Add various instances of classSample
BindingSource thisIsABindingSource = new BindingSource();
thisIsABindingSource.DataSource = lst;
reportDataSource rds = new ReportDataSource("prj_folder_classSample", thisIsABindingSource);

ReportViewer1.ProcessingMode = ProcessingMode.Local;
ReportViewer1.LocalReport.EnableExternalImages = true;
ReportViewer1.LocalReport.ReportEmbeddedResource = "YourProject.Folder.reportName.rdlc";
ReportViewer1.LocalReport.DataSources.Add(rds)

Я делаю это таким образом. Надеюсь, это вам поможет.


посмотрите на эту ссылку http://msdn.microsoft.com/en-us/library/cc281022.aspx#RDCE Если вы хотите динамически изменить свой отчет. Это расширение вызывается непосредственно перед отображением отчета. Корпорация Майкрософт создала объектную модель RDL. С помощью этого можно настроить весь отчет. Но, возможно, тебе не нужно это продление. Сначала попробуйте свои вещи в дизайнере отчетов.