我有获胜表单应用程序,当用户点击按钮时会在日期库中显示一些信息,它会打开报表查看器,用户应该保存文件
如您所知,报告查看器将允许用户将文件另存为PDF,WORD和EXCEL。
我想要的只是让用户只看到并按下PDF保存。
答案 0 :(得分:0)
首先,您可以使用ShowExportControls
属性禁用导出。
然后,您将向工具条添加自定义按钮。这将在您的form load event
。
ToolStrip ts = (ToolStrip)crystalReportViewer1.Controls[3];
ToolStripButton printbutton = new ToolStripButton();
printbutton.Image = ts.Items[1].Image;
ts.Items.Remove(ts.Items[1]);
ts.Items.Insert(1, printbutton);
ts.Items[1].Click += new EventHandler(this.CaptureEvent);
cr = new CrystalReport1();
this.crystalReportViewer1.ReportSource = cr;
然后你将拥有该按钮的自定义事件处理程序
private void CaptureEvent(Object Sender, EventArgs e)
{
// In this code, you'll have your own custom save file dialog
// Once you get that file name, save to PDF
SaveFileDialog saveFileDialog = new SaveFileDialog();
saveFileDialog.InitialDirectory = Environment.SpecialFolder.MyDocuments.ToString();
saveFileDialog.Filter = "Document (*.pdf)|*.PDF";
saveFileDialog.FilterIndex = 1;
if (saveFileDialog.ShowDialog() == DialogResult.OK)
{
crystalReportViewer1.ExportToDisk(ExportFormatType.PortableDocFormat, saveFileDialog.FileName);;
}
}
答案 1 :(得分:0)
要更改ToolStrip
外观以仅显示“保存”按钮而不显示下拉菜单,您可以找到ToolStrip
的{{1}},然后找到"导出&#34 ;按钮并删除下拉列表。
要显示保存对话框以仅允许保存PDF,请附加事件处理程序以单击" export"的事件。按钮并使用报告查看器的ReportViewer
方法显示保存对话框。您可以在ExportDialog
的{{1}}方法返回的扩展程序之间找到PDF扩展程序,并将其传递给ListRenderingExtensions()
方法,以限制对话框只显示LocalReport
扩展名。
示例1
将此代码粘贴到表单的加载事件中,加载报告后,按“保存”按钮。它将显示一个保存对话框,其中仅包含用于保存文件的PDF选项:
ExportDialog
示例2
如果您不想删除下拉箭头并希望它在下拉列表中显示PDF选项,请使用以下代码:
PDF
答案 2 :(得分:-1)
(似乎我没有足够的声誉来添加评论)
我使用了Reza Aghaei提供的建议。但是,reportview的上下文菜单还提供了Export Dropdown,这与Reza的建议无关。我禁用了ReportViewer ConcextMenu来解决此问题。
ShowContextMenu = false