我在Delphi QuickReport中用来创建报告和打印。在.NET C#中我可以用它来做什么?
我向我的项目(Winforms应用程序)添加了一些报告元素(Microsoft报告和Crystal报告),但我看到的是,我只能从数据库中插入数据。我想要的是使用在运行时创建的对象的值。这是因为我的报告实际上包含收据和发票。
哪个是最适合我需要的工具?
答案 0 :(得分:14)
您可以使用内置报告生成不需要数据库的精美报告。
为您的数据创建一个类,在我的例子中,我将创建一个人类:
class Person
{
public string FirstName { get; set; }
public string LastName { get; set; }
public string AddressLine1 { get; set; }
public string AddressLine2 { get; set; }
}
接下来,我将使用报告向导添加报告(添加新项目 - >报告 - >报告向导)。
对于数据源,我将选择Object,然后将其指向Person类。
为您的详细信息选择所需的列,我只是将所有列拖到值中以简化。
只需选择默认设置,然后选择默认设置,然后您应该看到报告。
现在,您可以将ReportViewer控件添加到表单,并将报表设置为刚刚创建的报表。这应该也会在表单上创建一个PersonBindingSource。
将PersonBindingSource的数据设置为内存中的列表:
BindingList<Person> myPeople = new BindingList<Person>();
myPeople.Add(new Person() { FirstName = "John" , LastName = "Doe"});
myPeople.Add(new Person() { FirstName = "Jane" , LastName = "Doe"});
myPeople.Add(new Person() { FirstName = "Jerry" , LastName = "Smithers" });
PersonBindingSource.DataSource = myPeople;
reportViewer1.RefreshReport();
this.reportViewer1.RefreshReport();
最终报告看起来像这样:
答案 1 :(得分:1)
Crystal Reports将为您提供完美的体验。实际上,您可以生成没有数据库的报告。查看this项目,它应该让你开始,就像你想要做的那样。
你这可以帮助你!