我正在使用 VS 2010。我有一个带有文本框和报表查看器的表单。
在我的表单文本框中,客户端插入一个值名称 Invoicenumber,然后当用户按下按钮时,reportviewer 必须生成,并且在 reportviewer 文本框中我希望显示发票编号。
我为 invoicenumber 创建了一个参数:Parameter!invoicenumber 并在我的 reportviewer 表达式中调用它。我错过了什么
我正在使用 VS 2010。我有一个带有文本框和报表查看器的表单。
在我的表单文本框中,客户端插入一个值名称 Invoicenumber,然后当用户按下按钮时,reportviewer 必须生成,并且在 reportviewer 文本框中我希望显示发票编号。
我为 invoicenumber 创建了一个参数:Parameter!invoicenumber 并在我的 reportviewer 表达式中调用它。我错过了什么
你是对的,你必须设置一个报告参数。我的理解是,在代码中,您必须在页面初始化和按钮单击事件中设置参数。在我的应用程序中,我使用 radiobuttonlist groupBy 设置为 autopostback=true 来选择报告的分组选项,但代码可以适应更新 label.text 以及按钮单击事件触发。请注意,我已将参数名称设置为“GroupBy”。参数的默认值指定为参数名称“GroupBy”。希望这可以帮助。
//grouping is a radio button list of the three report grouping options
<Page Init Event>
if(!Page.IsPostBack) {
//for your application set a var to your textbox value
var groupBy = grouping.SelectedValue;
var parameters = new List<ReportParameter>
{
new ReportParameter("GroupBy", groupBy),
};
ReportViewer1.LocalReport.SetParameters(parameters);
...
//for your application tie this to the button_click event
protected void grouping_CheckedChanged(Object sender, EventArgs e)
{
//for your application set a var to your textbox value
var groupBy = grouping.SelectedValue;
var parameters = new List<ReportParameter> { new ReportParameter("GroupBy", groupBy) };
ReportViewer1.LocalReport.SetParameters(parameters);
}
...