C# 如何在asp.net中打印标签或面板的内容?

C# 如何在asp.net中打印标签或面板的内容?,c#,javascript,asp.net-2.0,printing,C#,Javascript,Asp.net 2.0,Printing,我在asp.net 2.0的页面中有一个label控件和一个按钮Print 点击打印按钮,我需要打印标签的内容,我也需要同样的面板 有可能实施这一点吗 如果是,那么如何实施 请提供帮助。您需要在打印按钮中添加一些客户端javascript来执行浏览器的打印命令。下面的javascript可以用来打印整个文档页面,这将是一个很好的开始。注意:除非使用第三方组件,否则在不显示“打印”对话框的情况下无法执行此操作 // Print Page window.print(); 如果您只想打印页面的

我在asp.net 2.0的页面中有一个label控件和一个按钮Print

点击打印按钮,我需要打印标签的内容,我也需要同样的面板

有可能实施这一点吗

如果是,那么如何实施


请提供帮助。

您需要在打印按钮中添加一些客户端javascript来执行浏览器的打印命令。下面的javascript可以用来打印整个文档页面,这将是一个很好的开始。注意:除非使用第三方组件,否则在不显示“打印”对话框的情况下无法执行此操作

// Print Page   
window.print();
如果您只想打印页面的某些部分,可以通过两种方式实现。首先,可以将要打印的内容渲染到隐藏的iframe中,然后仅打印该帧。您可以使用与上面相同的代码仅从帧本身中执行此操作

其次,您可以使用媒体样式打印样式表,这是一种仅在打印时应用的CSS。在此工作表中,您可以将要打印的样式设置为普通样式,将不想打印的样式设置为“显示:无”。下面的链接包含有关打印样式表的更多信息


您需要向打印按钮添加一些客户端javascript来执行浏览器的打印命令。下面的javascript可以用来打印整个文档页面,这将是一个很好的开始。注意:除非使用第三方组件,否则在不显示“打印”对话框的情况下无法执行此操作

// Print Page   
window.print();
如果您只想打印页面的某些部分,可以通过两种方式实现。首先,可以将要打印的内容渲染到隐藏的iframe中,然后仅打印该帧。您可以使用与上面相同的代码仅从帧本身中执行此操作

其次,您可以使用媒体样式打印样式表,这是一种仅在打印时应用的CSS。在此工作表中,您可以将要打印的样式设置为普通样式,将不想打印的样式设置为“显示:无”。下面的链接包含有关打印样式表的更多信息


Window.Print()方法怎么样?因为execcommand方法不适用于使用CSS媒体选项控制打印区域的其他浏览器。

Window.print()方法如何?因为execcommand方法不适用于使用CSS媒体选项控制打印区域的其他浏览器。

另一种方法是打开新窗口,填充要打印的div的内容,并在该页面上设置打印链接/按钮。 例如:


var win=window.open(…)
win.document.body.appendChild(document.getElementById('divToPrintId'))


这就是代码的外观。这种方法用于打印页面的内容/部分。

另一种方法是打开新窗口,填充要打印的div的内容,并在该页面上设置打印链接/按钮。 例如:


var win=window.open(…)
win.document.body.appendChild(document.getElementById('divToPrintId'))


这就是使用这种方法打印页面内容/部分时代码的外观。

在按钮onclick事件中使用下面的代码

ClientScript.RegisterStartupScript(this.GetType(), "PrintOperation", "PrintGridData()", true);
上面的链接将调用名为PrintGridData()的函数,该函数在head部分中编写,如下所示

<script type="text/javascript">
    function PrintGridData() 
    {
        var prtGrid = document.getElementById('<%=GridView.ClientID %>');
        prtGrid.border = 0;
        var prtwin = window.open('', 'PrintGridViewData', 'left=100,top=100,width=1000,height=1000,tollbar=0,scrollbars=1, status=0,resizable=1');
        prtwin.document.write(prtGrid.outerHTML);
        prtwin.document.close();
        prtwin.focus();
        prtwin.print();
        prtwin.close();
    }
</script>

函数PrintGridData()
{
var prtGrid=document.getElementById(“”);
prtGrid.border=0;
var prtwin=window.open(“”,'PrintGridViewData','left=100,top=100,width=1000,height=1000,tollbar=0,scrollbars=1,status=0,resizable=1');
prtwin.document.write(prtGrid.outerHTML);
prtwin.document.close();
prtwin.focus();
prtwin.print();
prtwin.close();
}

在此脚本中,它将只打印div name
GridView
,其他部分将不会打印

在按钮onclick事件中使用下面的代码

ClientScript.RegisterStartupScript(this.GetType(), "PrintOperation", "PrintGridData()", true);
上面的链接将调用名为PrintGridData()的函数,该函数在head部分中编写,如下所示

<script type="text/javascript">
    function PrintGridData() 
    {
        var prtGrid = document.getElementById('<%=GridView.ClientID %>');
        prtGrid.border = 0;
        var prtwin = window.open('', 'PrintGridViewData', 'left=100,top=100,width=1000,height=1000,tollbar=0,scrollbars=1, status=0,resizable=1');
        prtwin.document.write(prtGrid.outerHTML);
        prtwin.document.close();
        prtwin.focus();
        prtwin.print();
        prtwin.close();
    }
</script>

函数PrintGridData()
{
var prtGrid=document.getElementById(“”);
prtGrid.border=0;
var prtwin=window.open(“”,'PrintGridViewData','left=100,top=100,width=1000,height=1000,tollbar=0,scrollbars=1,status=0,resizable=1');
prtwin.document.write(prtGrid.outerHTML);
prtwin.document.close();
prtwin.focus();
prtwin.print();
prtwin.close();
}
在此脚本中,它将只打印div name
GridView
,而不会打印其他部分