Joh*_*ner 16
您可以使用内置报告生成不需要数据库的精美报告.
为我的数据创建一个类,在我的例子中,我将创建一个person类:
class Person
{
public string FirstName { get; set; }
public string LastName { get; set; }
public string AddressLine1 { get; set; }
public string AddressLine2 { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
接下来,我将使用报告向导添加报告(添加新项目 - >报告 - >报告向导).
对于数据源,我将选择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();
Run Code Online (Sandbox Code Playgroud)最终报告看起来像这样:
