如何在没有主页的情况下在asp.net中打印页面并更改页面的配色方案

本文关键字:方案 打印 net 主页 情况下 asp | 更新日期: 2023-09-27 17:58:24

我在asp.net中制作了一个页面,我有一个成本计算器,它有50多个字段,相互依赖,一个是前两个字段的结果,就像这样,我希望我的页面打印得很好,主页面的页眉不应该打印,还有我想调整的配色方案,让我知道.net提供的最佳解决方案

如何在没有主页的情况下在asp.net中打印页面并更改页面的配色方案

将内容放入<div id="divid">YOUR CONTENT NEEDS TO BE PRINTED</div>

然后点击按钮调用javascript函数,它将打印div的选定区域或仅html。在调用javascript函数时传递div的id。

function CallPrint(var strid)
{
var prtContent = document.getElementById(strid);
var WinPrint = window.open('','','letf=10,top=10,width="450",height="250",toolbar=1,scrollbars=1,status=0');
WinPrint.document.write("<html><head><LINK rel='"stylesheet'" type'"text/css'" href='"css/print.css'" media='"print'"><LINK rel='"stylesheet'" type'"text/css'" href='"css/print.css'" media='"screen'"></head><body>");
WinPrint.document.write(prtContent.innerHTML);
WinPrint.document.write("</body></html>");
WinPrint.document.close();
WinPrint.focus();
WinPrint.print();
WinPrint.close();
return false;
}

调用CallPrint('DivGrid');"在按钮的onclick()上或在下面使用:but.Attributes.Add("OnClick", "return CallPrint('DivGrid');");

与.Net无关,与打印样式表无关。您可以创建一个样式表,该样式表只适用于打印页面时。你可以改变所有的东西,从什么显示到位置再到颜色。

用途:

<LINK rel="stylesheet" type"text/css" href="print.css" media="print">

注意media="print"表示它将用于打印页面。

我知道这个问题很久以前就被问过了,但没有被接受的建议。因此,在使用母版页时,这里是我的友好打印版本的方法。

  1. 创建一个空的母版页(PrintVersion.master)作为打印版本。添加任何你需要打印的东西(如徽标)到母版页
  2. 在内容页面中,添加一个目标为空白的打印链接。制作href以加载当前页面。从href添加查询字符串,以便您可以从内容页面预安装事件中捕获它
  3. 从内容页预安装事件中检测要打印的查询字符串是否存在,然后指定空白母版页,如:MasterPageFile="~/Ful/Path/of/your/PrintVersion.master"
  4. 可选,在document.ready调用的PrintVersion.Master上:window.print();浏览器打印对话框将自动打开

您可以制作一个新的可打印页面版本,其中不包括页眉。此版本也可以具有您需要的布局。