找回密码
 立即注册

QQ登录

只需一步,快速开始

Alice
社区贡献组   /  发表于:2014-12-23 11:46:00
11#
回复 10楼来爱清的帖子

1.安装产品后,可以在如下路径找到这个Demo:
C:\Users\[username]\Documents\ComponentOne Samples\Studio for WPF\C1.WPF.C1Report\C1WPFReport\CS\WPFReportViewer

打开本地的这个Demo,会提示需要注册码激活么?

2.从图片上看这个异常,是由于你这个xml文件里定义的不能识别。
你可以打开C1ReportDesigner自己导入一个数据源,然后生成一个xml文件(具体步骤参考2楼)。然后用这个WPFReportView导入生成的这个xml文件。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
来爱清
论坛元老   /  发表于:2014-12-23 16:44:00
12#
回复 11楼Alice的帖子

非常感谢您的耐心解答!

现在还有一个疑问,如何给报表传递参数啊,我们一般都会根据查询条件,来筛选报表的数据,目前没有找有传参的报表DMEO!
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2014-12-23 18:57:00
13#
回复 12楼来爱清的帖子

请问,你需要传递的是什么参数?
C1Report下DataSource.ConnectString属性,如果你的数据源数据需要选择,比如ID==5,都可以通过ConnectString重新设置。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
来爱清
论坛元老   /  发表于:2014-12-25 08:58:00
14#
回复 13楼Alice的帖子

比如我们一般的报表都是通过一些筛选条件查询出数据然后在进行打印或者是预览,我们写SQL也会写 select * from table where  name=''  类似这样的, 我要带where参数,同时这个要通过程序传值过来,请问有没有类似的DEMO啊
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2014-12-25 16:46:00
15#
回复 14楼来爱清的帖子



帮你做了个demo演示绑定。

主要就是更改C1Report的DataSource。
  1.   // initialize DataSource
  2.             C1.C1Report.DataSource ds = c1r.DataSource;
  3.             ds.ConnectionString =
  4.                 @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" +
  5.                 Environment.CurrentDirectory.Replace("\\bin\\Debug2010", string.Empty) +
  6.                 @"\c1nwind.mdb";
  7.             ds.RecordSource = reportName;
复制代码


附件代码是根据不同的数据表自动生成报表。如果XML文件是提前生成的,可以直接导入就可以。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
来爱清
论坛元老   /  发表于:2014-12-25 17:48:00
16#
回复 15楼Alice的帖子

更换数据源我是知道怎么换的,拿你的例子做个说明:我要的例子是通过查询条件查询CategoryName为Beverages的这条数据的,而不是选择数据源的问题! 不知道我阐述明白了吗!



因为报表设计器里面都是选择整个表来作为数据源的,我现在想要通过程序获取这个表的某一条数据来做报表,那么报表设计器设计出来的XML如何通过程序传递参数?


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2014-12-25 19:17:00
17#
回复 16楼来爱清的帖子

可以实现。我在楼上已经给出了代码:
  1.   // initialize DataSource
  2.             C1.C1Report.DataSource ds = c1r.DataSource;
  3.             ds.ConnectionString =
  4.                 @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" +
  5.                 Environment.CurrentDirectory.Replace("\\bin\\Debug2010", string.Empty) +
  6.                 @"\c1nwind.mdb";
  7.             ds.RecordSource = reportName;
复制代码

ds.RecordSource就是数据库里的Sql语句的ConnectString。
比如你导入了一个数据库的Employees,想让EmployeeID=1输出。
sql语句就是:SELECT * FROM  Employees where Employees.EmployeeID=1;

C1Report的代码直接写:
  1. ds.RecordSource =  "SELECT * FROM  Employees where Employees.EmployeeID=1;";
复制代码
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
来爱清
论坛元老   /  发表于:2015-1-5 16:05:00
18#
回复 17楼Alice的帖子

我是想问设计器里面可以设置输入参数吗?
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2015-1-5 17:36:00
19#
回复 18楼来爱清的帖子

C1ReportDesigner里也支持sql语句。
如图所示:

点击查询构造器,就可以在这个对话框里进行sql语句的构造。
然后也可以在如图的界面添加where。
如查询构造器构造sql语句完成后,sql语句如下所示:
  1. SELECT DISTINCT Customers.CustomerID,
  2.         Customers.CompanyName,
  3.         Customers.ContactName,
  4.         Customers.Address,
  5.         Customers.ContactTitle
  6. FROM  Customers ;
复制代码


这个时候就可以直接添加如下where语句
  1. WHERE ((Customers.CustomerID) = 'ALFKI');
复制代码

就会自动按sql语句生成相应的报表。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
12
您需要登录后才可以回帖 登录 | 立即注册
返回顶部