水晶报表是不是一定要开始就要在ReportDocument中把字段都设计好?不能根据datatable动态生成各种报表么?类似datagridview,datatable中有什么就显示什么。

解决方案 »

  1.   

    先要绑定一个dataset,做一个摸板,然后才能动态调用数据填充
      

  2.   

    我做了个空的报表,mysql.dt是动态生成的datatable,用下面的代码就显示错误
            private void Form2_Load(object sender, EventArgs e)
            {
                myreport mp = new myreport();
                ReportDocument mp = new ReportDocument();
                mp.SetDataSource(mysql.dt);-------这里显示错误:“该报表不包含表。”
                cr1.ReportSource = mp;        }
      

  3.   

    要先设置dataset(只是结构,不包含数据),在建立水晶报表模板的时候,在实际填充数据的时候再绑定新的dataset1,
      

  4.   

    据我得到的资料看,不可以。使用公式列可以动态绑定固定列数的表,算是折中的方法。
    VS带的RDLC报表是Xml格式的,可以通过动态构建Xml来达到动态生成报表的目的。真正能自动根据DataTable来生成报表的好像是不存在的。