我想将页面打印为 PDF。但问题是,在打印之前,我想展开所有控件(GridView、Treeview...)。
我找到了一些使用 Page.RenderControl(或 Control.RenderControl)的解决方案,但我有一些错误说“一个页面只能有一个服务器端表单标签。”。我理解错误(必须添加一个表单)。但我原以为 RenderControl 会写入新的 Writer(而不是当前的)。
Dim stringWriter As New StringWriter()
Dim htmlWriter As New HtmlTextWriter(stringWriter)
Me.Page.RenderControl(htmlWriter)
要扩展控件,我必须更改属性,然后渲染页面。以 PDF 格式呈现后,我想让页面正常加载。Response.End 停止加载,页面为空白。
是否有(好的)替代方法来获取页面内容,更改内容(例如:grid.AllowPaging = False)并将他发送到流中?