水晶报表传递参数:(不少时候有用) 页面: <%...@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %><%...@ Register TagPrefix="CR" Namespace="CrystalDecisions.Web" Assembly="CrystalDecisions.Web, Version=10.2.3600.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"><html xmlns="http://www.w3.org/1999/xhtml" ><head runat="server"> <title>Untitled Page</title> <link href="/aspnet_client/System_Web/2_0_50727/CrystalReportWebFormViewer3/css/default.css" rel="stylesheet" type="text/css" /></head><body> <form id="form1" runat="server"> <div> <CR:CrystalReportViewer ID="CrystalReportViewer1" runat="server" AutoDataBind="True" Height="1039px" ReportSourceID="CrystalReportSource1" Width="901px" /> <CR:CrystalReportSource ID="CrystalReportSource1" runat="server"> <Report FileName="CrystalReport1.rpt"> </Report> </CR:CrystalReportSource> <asp:Button ID="Button1" runat="server" Text="Button" /> </div> </form></body></html> 在报表设计中添加2个参数字段,注意名称对应即可。 C#代码如下: using System;using System.Data;using System.Configuration;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;using CrystalDecisions.Shared;using CrystalDecisions.CrystalReports.Engine;public partial class _Default : System.Web.UI.Page ...{ protected void Page_Load(object sender, EventArgs e) ...{ // 查看器控件所需的变量。 ParameterFields paramFields = new ParameterFields(); //设置传递第一个参数 ParameterField paramField = new ParameterField(); ParameterDiscreteValue discreteVal = new ParameterDiscreteValue(); paramField.ParameterFieldName = "qymc"; discreteVal.Value = "南方企业名称一"; paramField.CurrentValues.Add(discreteVal); paramFields.Add(paramField); //设置传递第二个参数 ParameterField paramField1 = new ParameterField(); ParameterDiscreteValue discreteVal1 = new ParameterDiscreteValue(); paramField1.ParameterFieldName = "qyjc"; discreteVal1.Value = "南方企业名称二"; paramField1.CurrentValues.Add(discreteVal1); paramFields.Add(paramField1); //绑定 CrystalReportViewer1.ParameterFieldInfo = paramFields; }} 运行结果: 测试通过!