Kindaly checking this way i have a method for displaying the report with parameters.that is work perfect in my project.
private void ShowReport()
{
ReportViewer1.LocalReport.SetParameters(new ReportParameter("ReportParameter1", "Created BY :" + user.FIRSTNAME + user.LASTNAME));
this.ReportViewer1.LocalReport.ReportEmbeddedResource = "Reports.Report.rdlc";
ReportParameter rp = new ReportParameter("ReportParameter1", "Created By: " + user.FIRSTNAME +" "+ user.LASTNAME);
ReportParameter rp1 = new ReportParameter("ReportParameter2", "Start Date: " + this.txtDateFrom.Text);
ReportParameter rp2 = new ReportParameter("ReportParameter3", "End Date: " + this.txtDateTo.Text);
ReportParameter rp4 = new ReportParameter("ReportParameter4", "DWCExchange Inc.");
ReportParameter rp5 = new ReportParameter("ReportParameter5", "Total Count: ");
this.ReportViewer1.LocalReport.SetParameters(new ReportParameter[] { rp, rp1, rp2, rp4, rp5 });
txtDateFrom1 = txtDateFrom.Text;
txtDateTo1 = txtDateTo.Text;
Office1 = drpOffice.SelectedValue;
ReportViewer1.LocalReport.DataSources.Clear();
DataSet dsGetHearing = null;
SqlConnection sqlCon = new SqlConnection();
sqlCon.ConnectionString = Utils.getSystemParameter("dsn");
dsGetHearing = new DataSet();
SqlCommand cmd = new SqlCommand("SPGetPatientHearing", sqlCon);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@Office", Office1);
cmd.Parameters.AddWithValue("@FuturePrior", "");
cmd.Parameters.AddWithValue("@Days", "");
cmd.Parameters.AddWithValue("@FromDate", txtDateFrom1);
cmd.Parameters.AddWithValue("@ToDate", txtDateTo1);
cmd.Parameters.AddWithValue("@OutQuery", "");
cmd.Parameters.AddWithValue("@IsExecute", 1);
SqlDataAdapter data = new SqlDataAdapter(cmd);
data.Fill(dsGetHearing);
ReportDataSource reportDSPartiesList =
new ReportDataSource("DataSet1",
dsGetHearing.Tables[0]);
ReportViewer1.LocalReport.DataSources.Add(reportDSPartiesList);
ReportViewer1.LocalReport.Refresh();
}