I have this method which through it, I guess it fills reportviewer parameters, but when I evaluate ReportParameters, (this.reportViewer1.LocalReport.GetParameters()), the first parameter has value of all others parameters. What's wrong here? this code belongs to FrmReport(example):

```
public void SetReportParameters(params string[] parameters){
    if (parameters.Length == ReportParameters.Count)
    {
        //ReportParameters = this.reportViewer1.LocalReport.GetParameters();
        ReportParameterCollection pCol = new ReportParameterCollection();
        int i = 0;
        parameters.ToList().ForEach(p => {
            pCol.Add(new ReportParameter(ReportParameters[i].Name, p));
        });
        this.reportViewer1.LocalReport.SetParameters(pCol);
    }
}

```

Then I say on another form:

```
var frmReport = new FrmReport();
frmReport.SetReportParameters("1","2");

```

And there I get the result like I said before.