ここで行き詰まりました、
印刷したい動的テーブルがあります。だから私はそれをWebコントロールに渡すセッションを作ります。残念ながら、それはスムーズに実行されません。
ここに私のコードがあります:
protected void bt_print_click(object sender, EventArgs e)
{
StringWriter sw = new StringWriter();
HtmlTextWriter w = new HtmlTextWriter(sw);
panelBilling.RenderControl(w);
string s = sw.GetStringBuilder().ToString();
Session["ctrl"] = s;
ClientScript.RegisterStartupScript(this.GetType(), "onclick", "<script language=javascript>window.open('Print.aspx?rep=1','PrintMe','height=680px,width=1024px,scrollbars=1');</script>");
}
そして Print.aspx.cs コード:
protected void Page_Load(object sender, EventArgs e)
{
Control ctrl = (Control)Session["ctrl"];
PrintHelper.PrintWebControl(ctrl);
}
私はいつもエラーメッセージを受け取りました:
「タイプ 'System.String' のオブジェクトをタイプ 'System.Web.UI.Control' にキャストできません。」
の上
(Control)Session["ctrl"]
部。私はこの方法を何度も使用しており、これまで問題はありませんでした。誰でも何か考えがありますか?ありがとう。