ReprotToolbar1.ReportViewer 连接上ReportViewer1时,行动时就会出现如下错误:编译器错误消息: CS0426: 类型“DevExpress.XtraReports.Web.ReportViewer”中不存在类型名称“WebForm1”源错误: 行 1069:        public void @__DataBindingReportToolbar1(object sender, System.EventArgs e) {
行 1070:            DevExpress.XtraReports.Web.ReportToolbar dataBindingExpressionBuilderTarget;
行 1071:            ReportViewer.WebForm1 Container;
行 1072:            dataBindingExpressionBuilderTarget = ((DevExpress.XtraReports.Web.ReportToolbar)(sender));
行 1073:            Container = ((ReportViewer.WebForm1)(dataBindingExpressionBuilderTarget.BindingContainer));
 
其中:WebForm1是Web窗体
之前用的是Default窗体,出错后以为是窗体的事,又新添加了一个窗体还是这样。
这是什么原因引起的?
应该怎样解决??

解决方案 »

  1.   

    这一行代码是在编译时出现的。是不可以操作的。
    我就新建了一个项目。不出现这个问题了。哎~~~  郁闷!这两天又想了很多的方法。不知为什么XtraReport就是不出现数据。
    思路、步骤如下:
    方法一:
    1.在dataset1(数据源)中添加 一个 DataTable (名称为DataTable1).
      并手动添加几列Col1,Col2,Col3.
    2.XtraReport的DataSource指向Dataset(数据源),
    即:XtraReport1.DataMember = DataTable1;
        XtraReport1.DataSource = dataSet11;
    并XrTableCell.Text 分别与 DataTable1中的列连接
    3.在Default.cs 中创建DataTable(内有数据信息),并向XtraReport1()函数中传递,参数名为table 。
    4.在XtraReport.cs 中,让dataSet11 与 传递过来的DataTable邦定。
       dataSet11.Tables.Add(table);
       DataSource = dataSet11;之后,运行程序,打开的窗口中什么也没有。
    方法二:
    但,将SQL语句放到DataAdapter中并与XtraReport邦定后运行就可以出现数据。(不用这方法,是因为SQL语句较复杂)这是为什么啊。
    在方法一中还缺什么步骤或语句吗?
      

  2.   

    DevExpress中带有很多XtraReport的示例程序,楼主可以参考
      

  3.   

    看过了。但里面好多都是用的DataAdapter 。而我的SQL语句不能定死到里面。
    还有谁知道啊!!!
      

  4.   

    Public Report(string strSQL)
    {
     InitializeComponent();
     
     SqlDataAdapter da=new SqlDataAdapter(strSQL,ConnSql); //创建DataAdapter数据适配器实例
     DataSet ds=new DataSet();//创建DataSet实例
     da.Fill(ds,"自定义虚拟表名");//使用DataAdapter的Fill方法(填充),调用SELECT命令
     DataSource =  ds.Tables[0];
     cellPayAmount.DataBindings.Add("Text", DataSource, "PayAmount", "{0:f2}");
     cellGrossPay.DataBindings.Add("Text", DataSource, "GrossPay", "{0:f2}");
      ...
    }
      

  5.   

    谢谢 Zhanlixin  再次帮助
    我试试
      

  6.   

    数据还是看不到???下面是我写的代码:
    是漏掉了什么关键语句??
    public XtraReport1()
    {
         InitializeComponent();
         string sql = "select XianZ,ZYH,CWH,BRXM,SMTZ,SSZD,MiaoS "
                    + "from (select ...) a ";
         SqlDataAdapter da = new SqlDataAdapter(sql,this.sqlConnection1.ConnectionString);  
          DataSet ds = new DataSet();//创建DataSet实例
          da.Fill(ds);//使用DataAdapter的Fill方法(填充),调用SELECT命令
          DataSource = ds.Tables[0];
         this.xrTableCell7.DataBindings.Add("Text", DataSource, "XianZ", "{0:f2}");
         this.xrTableCell8.DataBindings.Add("Text", DataSource, "CWH", "{0:f2}");
         this.xrTableCell9.DataBindings.Add("Text", DataSource, "ZYH", "{0:f2}");
         this.xrTableCell10.DataBindings.Add("Text", DataSource, "SMTZ", "{0:f2}");
         this.xrTableCell11.DataBindings.Add("Text", DataSource, "SSZD", "{0:f2}");
         this.xrTableCell12.DataBindings.Add("Text", DataSource, "MiaoS", "{0:f2}");
    }调用报表窗体Default.cs 中的代码如下:
    XtraReport1 report = new XtraReport1();
      

  7.   

    在调用报表窗体Default.aspx中添加ReportViewer1 的属性 RePort=XtraReport1
    这样数据就可以看到了。
    (但这样写无法传递参数至XtraReport)
    这又是为什么呢。在调用报表窗体Default.cs 中的代码中:
    XtraReport1 report = new XtraReport1();
    之后加上
    report.ShowPreview();  
    运行时出错???
      

  8.   

    XtraReport1 report = new XtraReport1();
    this.ReportViewer1.Report = report;不要这句report.ShowPreview();   
      

  9.   

    谢谢 Zhanlixin
    问题解决。
    就这一句可把我害苦了。要是这样的话,我可以把之前的方法再试试。说不定也可以通过呢。
    再次谢谢Zhanlixin
    发分了。