2015年7月10日 星期五

asp.net 列印網頁

asp.net 列印網頁

方法一:透過 webbrowser 物件
document.all.WebBrowser.ExecWB(1,1) //打開
document.all.WebBrowser.ExecWB(2,1) //關閉全部
document.all.WebBrowser.ExecWB(4,1) //另存為
document.all.WebBrowser.ExecWB(6,1) //列印
document.all.WebBrowser.ExecWB(6,6) //直接列印
document.all.WebBrowser.ExecWB(7,1) //預覽列印
document.all.WebBrowser.ExecWB(8,1) //頁面設置
document.all.WebBrowser.ExecWB(10,1) //屬性
document.all.WebBrowser.ExecWB(17,1) //全選
document.all.WebBrowser.ExecWB(22,1) //刷新
document.all.WebBrowser.ExecWB(45,1) //關閉


方法二:直接用 javascript
window.print();


方法三:寫一個JS檔,搭配前端 button 的觸發,列印指定 DIV 的區塊

<title>列印頁面測試</title>
<script type="text/javascript"  src="print.js"></script>
</head>

<asp:Button ID="Button1" runat="server" Text="Button" Height="61px" onclientclick="printScreen(print_parts)" Width="248px" onclick="Button1_Click" />

print.js
function printScreen(printlist) 
{
  var value = printlist.innerHTML;
  var printPage = window.open("", "Printing...", "");
  printPage.document.open();
  printPage.document.write("<HTML><head></head><BODY onload='window.print();window.close()'>");
  printPage.document.write("<PRE>");
  printPage.document.write(value);
  printPage.document.write("</PRE>");
  printPage.document.close("</BODY></HTML>");
}


protected void Button1_Click(object sender, EventArgs e)
{
    Page.ClientScript.RegisterClientScriptInclude("myPrint", "print.js");
}

沒有留言:

張貼留言