日期:2014-05-17  浏览次数:20579 次

Reportviewer重新绑定报表后,参数并未改变的问题!!!
ReportViewer开始绑定了1.rdlc报表,随后又通过代码重新绑定了2.rdlc报表,但是ReportViewer.LocalReport.SetParameters(...)这个函数访问依旧是1里的参数,没有访问到2里的参数,导致报错。。。  
部分代码:
ReportViewer1.LocalReport.ReportPath = "2.rdlc";
  ReportDataSource rds = new ReportDataSource("DataSet1_OtherAnimals", "ObjectDataSource2");
  ReportViewer1.LocalReport.DataSources.Clear();
  ReportViewer1.LocalReport.DataSources.Add(rds);
  BindData("test", "value"); //test是2.rdlc里面的参数
  ReportViewer1.LocalReport.Refresh();
 
private void BindData(string nameStr, string valueStr)
  {
  ReportParameter g = new ReportParameter(nameStr, valueStr);
  ReportViewer1.LocalReport.SetParameters(g);//这里报错,可能原因说2.rdlc里没有这个参数,我查了下发现这里的参数还是1.rdlc里的参数
  ReportViewer1.DataBind();
  }
 
求高人解答疑问啊!!!!分不多,谢谢了

------解决方案--------------------
这个帮你顶 同求