【Stimulsoft Reports.WPF教程】在报表中使用Business Objects

【下载Stimulsoft Reports.WPF最新版本】

此示例显示如何使用Business Objects集合创建报表, Business Objects是一个对象类数据,使用它可以以不同的结构呈现数据:表,列表,数组等。此示例使用Business Objects的两个变量 :IEnumerableITypedList

private void btPreviewIEnumerable_Click(object sender, System.EventArgs e)
{
    StiReport report = new StiReport();
    report.RegData("EmployeeIEnumerable", CreateBusinessObjectsIEnumerable.GetEmployees());
    report.Load("..\\BusinessObjects_IEnumerable.mrt");
    report.ShowWithWpf();
}
 
private void btPreviewITypedList_Click(object sender, System.EventArgs e)
{
    StiReport report = new StiReport();
    report.RegData("EmployeeITypedList", CreateBusinessObjectsITypedList.GetEmployees());
    report.Load("..\\BusinessObjects_ITypedList.mrt");
    report.ShowWithWpf();
}

作为IEnumerable对象,使用EmployeeIEnumerable模型。要填充数据,请使用CreateBusinessObjectsIEnumerable类的GetEmployees()方法:

public static EmployeeIEnumerableCollection GetEmployees()
{
    EmployeeIEnumerableCollection employees = new EmployeeIEnumerableCollection();
    Company company = new Company("Company1");
    Department storeDepartment = new Department(company, "Store Department");
    Department salesDepartment = new Department(company, "Sales Department");
 
    EmployeeIEnumerable emp = new EmployeeIEnumerable(storeDepartment, "Nicholas", "Nicholas@company1.com");
    emp.Phones.Add(new Phone("(206) 555-9857"));
    emp.Phones.Add(new Phone("(206) 555-6546"));
    emp.Phones.Add(new Phone("(206) 555-7651"));
    employees.Add(emp);
 
    emp = new EmployeeIEnumerable(storeDepartment, "Margaret", "Margaret@company1.com");
    emp.Phones.Add(new Phone("(206) 555-4546"));
    emp.Phones.Add(new Phone("(206) 555-0110"));
    employees.Add(emp);
 
    emp = new EmployeeIEnumerable(storeDepartment, "Janet", "Janet@company1.com");
    emp.Phones.Add(new Phone("(206) 555-5462"));
    emp.Phones.Add(new Phone("(206) 555-8400"));
    emp.Phones.Add(new Phone("(206) 555-9842"));
    employees.Add(emp);
 
    emp = new EmployeeIEnumerable(salesDepartment, "Laura", "Laura@company1.com");
    emp.Phones.Add(new Phone("(206) 555-0022"));
    employees.Add(emp);
 
    emp = new EmployeeIEnumerable(salesDepartment, "Mark", "Mark@company1.com");
    emp.Phones.Add(new Phone("(206) 555-9980"));
    emp.Phones.Add(new Phone("(206) 555-5567"));
    employees.Add(emp);
 
    emp = new EmployeeIEnumerable(salesDepartment, "Michael", "Michael@company1.com");
    emp.Phones.Add(new Phone("(206) 555-5642"));
    employees.Add(emp);
 
    emp = new EmployeeIEnumerable(salesDepartment, "Thomas", "Thomas@company1.com");
    emp.Phones.Add(new Phone("(206) 555-8949"));
    employees.Add(emp);
 
    return employees;
}

作为ITypedList对象,使用EmployeeITypedList模型。要填充数据,请使用CreateBusinessObjectsITypedList类的GetEmployees()方法:

public static EmployeeITypedListCollection GetEmployees()
{
    EmployeeITypedListCollection employees = new EmployeeITypedListCollection();
    Company company = new Company("Company1");
    Department storeDepartment = new Department(company, "Store Department");
    Department salesDepartment = new Department(company, "Sales Department");
 
    EmployeeITypedList emp = new EmployeeITypedList(storeDepartment, "Nicholas", "Nicholas@company1.com");
    emp.Phones.Add(new Phone("(206) 555-9857"));
    emp.Phones.Add(new Phone("(206) 555-6546"));
    emp.Phones.Add(new Phone("(206) 555-7651"));
    employees.Add(emp);
 
    emp = new EmployeeITypedList(storeDepartment, "Margaret", "Margaret@company1.com");
    emp.Phones.Add(new Phone("(206) 555-4546"));
    emp.Phones.Add(new Phone("(206) 555-0110"));
    employees.Add(emp);
 
    emp = new EmployeeITypedList(storeDepartment, "Janet", "Janet@company1.com");
    emp.Phones.Add(new Phone("(206) 555-5462"));
    emp.Phones.Add(new Phone("(206) 555-8400"));
    emp.Phones.Add(new Phone("(206) 555-9842"));
    employees.Add(emp);
 
    emp = new EmployeeITypedList(salesDepartment, "Laura", "Laura@company1.com");
    emp.Phones.Add(new Phone("(206) 555-0022"));
    employees.Add(emp);
 
    emp = new EmployeeITypedList(salesDepartment, "Mark", "Mark@company1.com");
    emp.Phones.Add(new Phone("(206) 555-9980"));
    emp.Phones.Add(new Phone("(206) 555-5567"));
    employees.Add(emp);
 
    emp = new EmployeeITypedList(salesDepartment, "Michael", "Michael@company1.com");
    emp.Phones.Add(new Phone("(206) 555-5642"));
    employees.Add(emp);
 
    emp = new EmployeeITypedList(salesDepartment, "Thomas", "Thomas@company1.com");
    emp.Phones.Add(new Phone("(206) 555-8949"));
    employees.Add(emp);
 
    return employees;
}

示例代码的结果如下图所示:

Stimulsoft

查看原文,下载示例

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值