#region Report Parameters //Pass the parameters for Title1 and Title2 to Crystal // all the parameter fields will be added to this collection ParameterFields paramFields = new ParameterFields(); // the parameter fields to be sent to the report ParameterField pfField1 = new ParameterField(); ParameterField pfField2 = new ParameterField(); // setting the name of parameter fields with wich they will be recieved in report pfField1.ParameterFieldName = "Title1"; // just the variable name we used (carryover from old VFP report) pfField2.ParameterFieldName = "Title2"; // secondary report title variable name // the above declared parameter fields accept values as discrete objects // so declaring discrete objects ParameterDiscreteValue dcField1 = new ParameterDiscreteValue(); ParameterDiscreteValue dcField2 = new ParameterDiscreteValue(); // setting the values of discrete objects dcField1.Value = "Primary Report Title"; //Title1 you can get from anywhere, here for example I just plug it in dcField2.Value = "SubReport Title"; //Title2 // add discrete values to parameters pfField1.CurrentValues.Add(dcField1); pfField2.CurrentValues.Add(dcField2); // now adding all these parameter fields to the parameter collection paramFields.Add(pfField1); paramFields.Add(pfField2); // add the parameter collection to the crystal report viewer this.crystalReportViewer1.ParameterFieldInfo = paramFields; #endregionJust wanted to add this forum is a really good resource for Crystal Reports and .net: