我目前正在学习如何过滤ReportViewer的报告,我已经通过互联网搜索并找到了一些有用的提示,这就是我所做的:
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim USER As New ReportParameter("user", txtuser.Text)
Try
Me.DataTableTableAdapter.Fill(Me.DataSet3.DataTable, DateTimePicker1.Value.Date, DateTimePicker2.Value.Date)
ReportViewer1.LocalReport.SetParameters(New ReportParameter() {USER})
ReportViewer1.RefreshReport()
Catch ex As Exception
MessageBox.Show(ex.ToString)
End Try
End Sub
在表单加载中我添加了这段代码:
Private Sub AuditReport_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.DataTableTableAdapter.Fill(Me.DataSet3.DataTable,DateTimePicker1.Value.Date, DateTimePicker2.Value.Date)
ReportViewer1.RefreshReport()
end sub
问题是当ReportViewer加载时它没有显示数据(内容),而是显示这样的空白:
和数据仅显示我在搜索用户文本框中输入的内容,如下所示:
请注意,当我在文本框中键入“label5”时,数据显示所有label5,这是我的目标,但我还想要的是,当ReportViewer加载时,它应该显示报告的所有数据而不是空白,以及文本框如果是空白则应显示所有数据报告。
这是搜索用户名的参数:
通过日期过滤报告工作正常,它从一开始就加载数据报告,但是当我尝试为用户名过滤添加报告参数时问题就出现了。