ReportViewer导出默认问题

yuyang1976 2013-03-22 09:03:20
利用RDLC做了一个报表,系统导出自带了3中格式,现在只需要导出PDF,目前已经把Excel和Word按钮隐藏了,但还是要先点一下那个导出,然后弹出PDF。想做到不要那个下拉小三角,点击导出后直接就导出PDF,不用点两次。请大侠指教,谢谢。
...全文
311 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
yuyang1976 2014-02-11
  • 打赏
  • 举报
回复
引用 7 楼 yezhubaobao 的回复:
引用 楼主 yuyang1976 的回复:
利用RDLC做了一个报表,系统导出自带了3中格式,现在只需要导出PDF,目前已经把Excel和Word按钮隐藏了,但还是要先点一下那个导出,然后弹出PDF。想做到不要那个下拉小三角,点击导出后直接就导出PDF,不用点两次。请大侠指教,谢谢。
如何把Excel和Word按钮隐藏掉呢?
ReportViewer rw = this.ReportViewer1 as ReportViewer; if (rw == null) { return; } foreach (RenderingExtension re in rw.LocalReport.ListRenderingExtensions()) { //屏蔽掉你需要取消的导出功能 Excel PDF Word if (re.Name == "Excel" || re.Name == "WORD")//屏蔽掉excel pdf和word类似 { FieldInfo fi = re.GetType().GetField("m_isVisible", BindingFlags.Instance | BindingFlags.NonPublic); fi.SetValue(re, false); } }
yezhubaobao 2013-12-26
  • 打赏
  • 举报
回复
引用 楼主 yuyang1976 的回复:
利用RDLC做了一个报表,系统导出自带了3中格式,现在只需要导出PDF,目前已经把Excel和Word按钮隐藏了,但还是要先点一下那个导出,然后弹出PDF。想做到不要那个下拉小三角,点击导出后直接就导出PDF,不用点两次。请大侠指教,谢谢。
如何把Excel和Word按钮隐藏掉呢?
yuyang1976 2013-03-31
  • 打赏
  • 举报
回复
没人理啊,自己顶
yuyang1976 2013-03-27
  • 打赏
  • 举报
回复
自顶一下看看
yuyang1976 2013-03-23
  • 打赏
  • 举报
回复
[quote=引用 3 楼 libian339 的回复:] 呵呵,你这问题我也碰到过,你这个思路没走通,最后改成默认生成PDF文档,用户点击一下打开就能打开PDF文档 quote] 您这种方式报表一打开就自动保存成PDF了吧,我现在也能实现增加一个按钮,点击后保存成PDF,主要是考虑想直接利用自带的那些个按钮,因此才想着有没有办法点击那个导出直接默认导出某一格式的文件。
笨笨熊三号 2013-03-23
  • 打赏
  • 举报
回复
呵呵,你这问题我也碰到过,你这个思路没走通,最后改成默认生成PDF文档,用户点击一下打开就能打开PDF文档
ReportViewer1.LocalReport.DataSources.Add(new ReportDataSource("DataSet", ds.Tables["sql"]));
                ReportViewer1.DataBind();//你的代码应该到这都有
                this.ReportViewer1.ServerReport.Refresh();
                Warning[] warnings;
                string[] streamids;
                string mimeType;
                string encoding;
                string extension;
                byte[] reportBytes = this.ReportViewer1.LocalReport.Render("PDF", null, out mimeType, out encoding, out extension, out streamids, out warnings);

                Response.ClearContent();
                Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode("报表名称" + ".pdf"));
                Response.AddHeader("Accept-Header", reportBytes.Length.ToString());
                Response.ContentType = "application/pdf";
                Response.OutputStream.Write(reportBytes, 0, reportBytes.Length);
                Response.Flush();
                Response.Close();
yuyang1976 2013-03-23
  • 打赏
  • 举报
回复
再次顶一下,还请赐教。
yuyang1976 2013-03-22
  • 打赏
  • 举报
回复
自己顶一下。

62,073

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧