从窗体中的日期时间选取器获取值,并将其添加到 RDLC 报表中的文本框中
本文关键字:添加 报表 文本 RDLC 时间 日期 窗体 选取 获取 | 更新日期: 2023-09-27 18:37:22
我有一个带有 2 个日期时间选择器和一个按钮的表单。单击该按钮时,将打开另一个带有报表查看器的窗体。附加到该报表查看器的 RDLC 报表具有 2 个文本框,用于显示在日期时间选取器中选择的日期值。但是我找不到将这些值添加到RDLC报告中的方法。请帮我解决这个问题。
表格 1:
private void btnGenerate_expense_report_Click(object sender, RoutedEventArgs e)
{
DateTime sDate = dPStartDate_expense_report.Value.ToString("yyyy-MM-dd");
DateTime eDate = dPEndDate_expense_report.Value.ToString("yyyy-MM-dd");
var repExpense = new ReportExpenses(sDate, eDate);
repExpense.ShowDialog();
}

尝试以下
DateTime sDate = dPStartDate_expense_report.Value;
DateTime eDate = dPEndDate_expense_report.Value;
.ToString("yyyy-MM-dd")将datetime转换为string,如果ReportExpenses构造函数接受datetime值,则无需DateTimePicker值转换为字符串
或者您可以直接使用该值
var repExpense = new ReportExpenses(dPStartDate_expense_report.Value, dPEndDate_expense_report.Value);
现在,您可以设置报表查看器的参数值
ReportParameter p1 = new ReportParameter("sDate", sDate);
ReportParameter p1 = new ReportParameter("eDate", eDate);
this.ReportViewer1.LocalReport.SetParameters(new ReportParameter[]{p1,p2});
假设您已在报表中添加了两个名称"sDate" and "eDate"具有DateTime类型的参数
如果需要使用上述参数值设置文本框文本,可以将表达式添加为
=Parameters!sDate.Value