C# 以编程方式传递参数并在crystal report中显示
我有一个crystal报告,其中我以编程方式设置了数据源和参数,但它不起作用。我没有按要求得到输出 这是我显示全部时的输出 但当我向它传递参数时,它什么也不显示。 我通过应用调试签入了DataTable。数据已过滤,但它未显示在我的Crystal Report Viewer中 这是我向它传递参数时得到的结果。 这是我的密码:C# 以编程方式传递参数并在crystal report中显示,c#,.net,crystal-reports,C#,.net,Crystal Reports,我有一个crystal报告,其中我以编程方式设置了数据源和参数,但它不起作用。我没有按要求得到输出 这是我显示全部时的输出 但当我向它传递参数时,它什么也不显示。 我通过应用调试签入了DataTable。数据已过滤,但它未显示在我的Crystal Report Viewer中 这是我向它传递参数时得到的结果。 这是我的密码: private void button1_Click(object sender, EventArgs e) { con.Open(); DataTab
private void button1_Click(object sender, EventArgs e)
{
con.Open();
DataTable table = new DataTable();
DataSet DataSet2 = new DataSet();
SqlCommand cmd = new SqlCommand("Select * from personal_data WHERE class = '" + textBox1.Text.ToString()+"'", con);
table.Load(cmd.ExecuteReader());
DataSet2.DataSetName = "dt";
DataSet2.AcceptChanges();
DataSet2.Tables.Add(table);
ad.SelectCommand=cmd;
ad.Fill(DataSet2,"personal_table");
ParameterFields paramFields = new ParameterFields();
// ParameterDiscreteValue paramDiscreteValue = new ParameterDiscreteValue();
ParameterField paramField = new ParameterField();
ParameterDiscreteValue paramDiscreteValue = new ParameterDiscreteValue();
paramField.Name = @"class";
paramDiscreteValue.Value = textBox1.Text.ToString();
paramField.CurrentValues.Add(paramDiscreteValue);
paramFields.Add(paramField);
reportDocument.Load(@"C:\Users\Administrator\Documents\Visual Studio 2010\Projects\CrudStudent\Crud\CrystalReport1.rpt");
crystalReportViewer1.ParameterFieldInfo = paramFields;
reportDocument.SetDataSource(DataSet2);
crystalReportViewer1.ReportSource = reportDocument;
con.Close();
}
传递一个参数,如下所示:
CRPT.SetParameterValue("parameterName", parameterValue);
有关更多详细信息,请参见此。您是否已经在crystal报表中创建了参数名称“class”?是的,我已经创建了它