我在vb.net中有一個reportviewer,我有2個.rdlc文件,即Report1和Report2。 它們具有與表格相同的設計,但Report1具有參數和過濾器,Report2只顯示我的記錄中的所有內容。在運行時綁定/重新綁定datasource到reportviewer vb.net
我知道如何將數據源綁定到reportviewer在設計時,但我不知道如何去做它運行時,我需要切換數據源,當表單加載第一次,當用戶實際上搜索的東西。基本上這是我的想法。
http://imageshack.us/photo/my-images/407/reportzm.png/
我需要顯示所有記錄的第一次加載窗體。所以我將需要Report2.rdlc爲沒有過濾器。
當我有Report1.rdlc綁定,這就是我們看到的
http://imageshack.us/photo/my-images/255/er11.png/
沒有顯示除了我們在文本框中輸入一些值,然後單擊搜索,記錄將根據加載關於我們正在尋找的東西。
這裏是代碼。
Imports Microsoft.Reporting.WinForms
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'TODO: This line of code loads data into the 'houseDataSet.Table1' table. You can move, or remove it, as needed.
Me.Table1TableAdapter.Fill(Me.houseDataSet.Table1)
Me.ReportViewer1.RefreshReport()
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim a As New ReportParameter("ReportParameter1", TextBox1.Text)
ReportViewer1.LocalReport.SetParameters(New ReportParameter() {a})
ReportViewer1.RefreshReport()
End Sub
End Class