ページを PDF として印刷したいと考えています。しかし、問題は、印刷する前に、すべてのコントロール (GridView、Treeview ...) を展開したいということです。
Page.RenderControl (または Control.RenderControl) を使用していくつかのソリューションを見つけましたが、「ページにはサーバー側の Form タグを 1 つだけ含めることができます」というエラーが表示されます。エラーを理解しました (フォームを 1 つだけ追加する必要があります)。しかし、私は RenderControl が新しい Writer (現在のものではなく) に書き込むと思っていたでしょう。
Dim stringWriter As New StringWriter()
Dim htmlWriter As New HtmlTextWriter(stringWriter)
Me.Page.RenderControl(htmlWriter)
コントロールを展開するには、プロパティを変更してから、ページをレンダリングする必要があります。PDF でレンダリングしたら、ページを通常どおりロードしたいと思います。Response.End の読み込みが停止し、ページが空白になります。
ページのコンテンツを取得し、コンテンツを変更して (例: grid.AllowPaging = False)、彼をストリームに送信する (良い) 代替手段はありますか?