我有一个按钮在asp.net (c#),我想在点击这个按钮后,我可以打印从我的html表,这是在一个更新面板,我只想打印我的html表不是所有的页面有任何组件?非常感谢
发布于 2011-08-10 03:56:17
2种处理方法:
定义一个打印media
基于OP注释
直接来自W3c:
http://www.w3.org/TR/CSS2/media.html
请专门阅读有关打印介质的内容,这意味着您可以在asp.net项目中定义一个介质类型为“print”的.css文件:
@media print {
/* style sheet for print goes here */
}这很好,因为您现在可以定义CSS来隐藏屏幕上的所有元素:
display:none
除了您选择的div / table之外:
#myDiv {
display: block;
}在您的asp.net页面中,您有以下定义:
<link rel="stylesheet" media="print" title="Printer-Friendly Style"
type="text/css" href="printStyle.css">这告诉您的应用程序在打印页面时使用printStyle.css文件。一旦你尝试打印,应用程序将使用printStyle以及你定义的所有格式和样式。
这里有一个很好的例子:http://www.4guysfromrolla.com/demos/printMediaCss.html
对于第二点,如果您运行的是SQL Server,则报告服务是免费的。当然,您将需要设置并部署报表。这有点超出了这个问题的范围。如果您有报表服务,则可能需要打开一个新主题并询问有关该主题的问题。否则,只需创建一个打印样式的css文件。
发布于 2011-08-10 03:57:35
你可以使用CSS @print Media Type来隐藏你不想打印的东西。
请查看the w3 Schools tutorial以了解基本概述。
发布于 2011-08-10 04:09:03
您可以使用CSS类来定义媒体类型,如@print、@screen,然后使用这些类标记webapge的适当部分。
为了让按钮执行打印,您需要在按钮的定义中添加:onClientClick="window.print()"。
像这样使用CSS:
@media print
{
printOnly {display:block;}
screenOnly {display:none;}
}
@media screen
{
printOnly {display:none;}
screenOnly {display:block;}
}然后简单地用类来装饰你的DIVs或者其他元素:
<div class="screenOnly">this will not print but will show on screen</div>或
<div class="printOnly">this will not show on screen but will print</div>
https://stackoverflow.com/questions/7002105
复制相似问题