zw20045 发表于 2015-5-11 11:32:00

关于reportViewer1的Document 在C#中没有出现,不支持的问题

编程环境VS2010 C#。

第一个问题:
         我在我的form里的打印按钮下,添加如下代码:

         private void button3_Click(object sender, EventArgs e)

      {

            DataTable dtTempGrid1 = (DataTable)dataGridView1.DataSource;       //数据获取

         //打印部分

            SectionReport1 sReport1 = new SectionReport1();       //新建的一个区域报表

            sReport1.DataSource = dtTempGrid1;

            sReport1.Run();

            reportViewer1.do = sReport1.Document;      //这个地方,Document 非法,出不来,这是为啥呢?在From窗体中我拖了一个reportViewer控件。

             //viewer1.Document = sReport1.Document;

第二个问题:
            另外我想的是在我的Form窗体里点击打印按钮,然后弹出打印报表窗体,也就是不想在我当前的Form窗体里增加一个reportViewer1报表控件。
            那是不是我需要新建一个From窗体,然后在这个窗体里拖入一个 reportViewer呢?然后我的按钮事件里,我需要打开这个窗体,并且将datatable传给这个窗体呢?
            有没有其他的简单的实现方法呢?

zw20045 发表于 2015-5-18 12:06:00

谢谢你详细的解答。
我估计是工具栏里那个拖动时的问题。我看到我的ActiveReport9工具栏哪里是空白的,没有任何控件。
显示:此类别中的控件不可用于.net Framwork 4 Client Profile。若需要改此设置,请打开“项目属性”窗口

frank.zhang 发表于 2015-5-11 15:19:00

您好,
第一个问题,我们在例子程序中,使用以下代码来实现
SectionReport1 sr = new SectionReport1();
sr.Run();
this.viewer1.Document = sr.Document;


参考博客:http://blog.gcpowertools.com.cn/post/2014/09/23/ActiveReports_GettingStart2aspx.aspx

我们建议您使用RDL报表,RDL报表的功能更加强大。
如何选择更加适合项目的报表,可以参考:
http://blog.gcpowertools.com.cn/post/2014/09/26/ActiveReports_GettingStart3aspx.aspx

frank.zhang 发表于 2015-5-11 15:28:00

您好,
第二个问题,在新的From窗体显示报表,确实需要新增Form窗体并增加一个reportViewer。但是,我们数据集的绑定支持多种方法。可以选择直接连接数据库,非常的方便。
您可以参考http://blog.gcpowertools.com.cn/post/2014/08/01/ActiveReports_DataSource_DesignTime.aspx

我们的资源中心:http://www.gcpowertools.com.cn/products/activereports_resources.htm#rimarytutorials

zw20045 发表于 2015-5-15 17:01:00

嗯,我看到了,如果使用你们的这个,我就需要在你们的报表里写好数据库语句。
这样客户使用就有点不灵活,首先数据库连接字段实施时需要去修改。
另外,客户查出来了一个表,可能只需要这个表里部分行进行打印。不方便选择。

zw20045 发表于 2015-5-15 17:13:00

错误        1        “Microsoft.Reporting.WinForms.ReportViewer”不包含“Document”的定义,并且找不到可接受类型为“Microsoft.Reporting.WinForms.ReportViewer”的第一个参数的扩展方法“Document”(是否缺少 using 指令或程序集引用?)

zw20045 发表于 2015-5-15 17:16:00

我是按照这个方法,添加From,然后拖动一个reportViewer1到From里,然后在代码里添加
            SectionReport1 sr = new SectionReport1();
            sr.Run();
            this.reportViewer1.Document = sr.Document;
但是这个Document 在C#里提示报错。

frank.zhang 发表于 2015-5-15 18:11:00

您好,
关于您报表类型选择,我想跟您打电话沟通下。

使用的代码是
reportViewer1.LoadDocument(sr);

zw20045 发表于 2015-5-16 00:49:00

选择的是区域报表,activereport9区域报表,基于代码。
您的电话是多少,我给你打过去吧。

zw20045 发表于 2015-5-16 01:04:00

这个地方没解决,没有办法进行下一步的熟悉了。
我可以将源码发给您帮我看下。其实就是按照这个文章,新建一个工程,新建一个窗体,就这步走不通。

frank.zhang 发表于 2015-5-18 09:34:00

您好,
已经电话沟通,我会尽快给您一个示例。
页: [1] 2
查看完整版本: 关于reportViewer1的Document 在C#中没有出现,不支持的问题