将日期作为参数传递到报告中

Pass date as a parameter into report

我正在创建一个计算净重的应用程序,在其中一种形式上,我必须为用户提供从下拉组合框中选择项目的选项,并为用户提供一个选项从日期时间选择器中选择任何日期,我必须将其作为参数放在我的报告的文本框中,我在填充组合框以选择项目时没有任何问题,因为这些项目在数据库中 table,我使用 sql 命令获取列,然后将其作为参数传递以填充下拉列表,然后设置相同但日期时间选择器,用户可以 select 他们希望的任何日期如何通过将该值添加到报告中,以便直观地了解我在说什么,单击 this 我使用 GUI 创建了我的报告,并且该 gui 生成了这段代码,该代码使用我正在设置的一个参数加载报告。

private void PieceCodepc_Load(object sender, EventArgs e)
{

    reportViewer1.Visible = false;
    // TODO: This line of code loads data into the 'dataSet1.DataTable1' table. You can move, or remove it, as needed.
    this.dataTable1TableAdapter.Fill(this.dataSet1.DataTable1);

}

private void button1_Click(object sender, EventArgs e)
{
    // TODO: This line of code loads data into the 'tableforReport.CandyPieceSize' table. You can move, or remove it, as needed.
    this.CandyPieceSizeTableAdapter.Fill(this.tableforReport.CandyPieceSize);
    // TODO: This line of code loads data into the 'empty.Piece_Dimension_Master_Data' table. You can move, or remove it, as needed.
    this.Piece_Dimension_Master_DataTableAdapter.Fill(this.empty.Piece_Dimension_Master_Data, comboBox1.SelectedValue.ToString());

    this.reportViewer1.RefreshReport();    
}

我得到它的工作希望post它作为一个答案,以便其他人可以从类似情况中受益。

 private void setFiltersParameters()
        {
            this.Piece_Dimension_Master_DataTableAdapter.Fill(this.empty.Piece_Dimension_Master_Data, comboBox1.SelectedValue.ToString());
            ReportParameter date = new ReportParameter("date", dateTimePicker1.Text.ToString());
            this.reportViewer1.LocalReport.SetParameters(new ReportParameter[] { date });
            this.reportViewer1.RefreshReport();
        }

单击按钮时,我会调用上述方法

  private void button2_Click(object sender, EventArgs e)
        {
            setFiltersParameters();
            reportViewer1.SetDisplayMode(Microsoft.Reporting.WinForms.DisplayMode.PrintLayout);
            button1.PerformClick();
            reportViewer1.Visible = true;
        }