在Visual C# 应用程序里,只建立了一个空白的水晶报表,
我想动态显示SQL Server 数据库的表内容,但总不能如愿,
代码如下:
        private SqlConnection sqlCn = null;
        private SqlDataAdapter sqlDeDA = null;
        private string m_strCn = "Data Source=(local);Initial Catalog=LineMonitor;"
        + "Integrated Security=SSPI;";
        private string strSql = "Select * from Device";        sqlCn = new SqlConnection(m_strCn);
        sqlDeDA = new SqlDataAdapter(strSql, sqlCn);
        DataSet daDataSet = new DataSet();
        sqlDeDA.Fill(daDataSet, "Device");        DataTable dt = daDataSet.Tables["Device"];
        CrystalReport1 oRpt = new  CrystalReport1();
        oRpt.SetDataSource(dt);
        crystalReportViewer1.ReportSource = oRpt;Device是数据库LineMonitor的一张表,CrystalReport1是一张空白报表.
crystalReportViewer1是放在窗体上报表显示控件,运行是总是空白的报表,没有任何内容,
急切希望高手指点!!

解决方案 »

  1.   

    技术交流群号:23266021
    欢迎大家在此讨论关于.net的各种技术。1号群
      

  2.   

    水晶报表使用时有两种模式
    推和拉 即是 pull和push
    有一种模式是可以动态设置数据源的 你可以上网查一下相关资料
    不过不能用RunTime DateSet你要手动拖入一个DataSet
      

  3.   

    水晶报表必须先设计表,再绑定,没你那么先进。
    一张空白的想加数据?怎么加?就按TABLE的格式直接显示出来?那用datagrid好了用什么水晶报表啊?我认为的动态是,先用XML做一个dataset,空的只有字段名就可以了不需要和任何数据源关联,然后设计报表,程序运行时候用的自己的dataset绑定就OK了,字段名一定要一样
      

  4.   

    其实动态绑定很简单的,不过报表用到强类型的DATASET,首先要考虑到数据量大的时候显示问题.如果有兴趣可以加我交流下392834343我的Q