Пока на взгляд это кажется легким, варианты экспорта трудно достать. Вы можете получить ToolStrip в ReportViewer, просто сделать это:
Dim myToolStrip As ToolStrip = DirectCast(ReportViewer1.Controls.Find("toolStrip1", True)(0), ToolStrip)
... и вы можете перебирать коллекцию .items делать то, что вам нравится с помощью кнопок, однако сбор на DropDownItems для кнопки экспорта всегда появляется пустым.
Таким образом, простое решение - избавиться от кнопки экспорта по умолчанию и добавить свой собственный доступ к необходимой функциональности. Так что в вашем виде конструктора:
//Hide the default export button
ReportViewer1.ShowExportButton = False
//Define a new button
Dim newExportButton As New ToolStripButton("Export PDF", Nothing, AddressOf Me.ExportPDF, "newExport")
//And add it to the toolstrip
DirectCast(ReportViewer1.Controls.Find("toolStrip1", True)(0), ToolStrip).Items.Add(newExportButton)
Тогда все, что вам нужно сделать, это позаботиться о фактическом экспорте:
Private Sub ExportPDF()
Dim warnings As Microsoft.Reporting.WinForms.Warning()
Dim streamids As String()
Dim mimeType As String = ""
Dim encoding As String = ""
Dim extension As String = ""
Dim bytes As Byte() = ReportViewer1.LocalReport.Render("PDF", Nothing, mimeType, encoding, extension, streamids, warnings)
Dim fs As New IO.FileStream("C:\export.pdf", IO.FileMode.Create)
fs.Write(bytes, 0, bytes.Length)
fs.Close()
fs.Dispose()
End Sub
Следующий вопрос, который мне сопутствовал: http://stackoverflow.com/questions/1499885/reportviewer-hide-pdf-export –