asp.net如何实现 打印gridview中的数据,打印之前要预览设置打印页面
gridview中的数据是分页的,打印的时候要将数据一并打印出来C#语言实现如果能用水晶报表实现,请帮我讲一下具体怎么操作,包括如何绑定数据等,谢谢...
gridview中的数据是分页的,打印的时候要将数据一并打印出来
C#语言实现 如果能用水晶报表实现,请帮我讲一下具体怎么操作,包括如何绑定数据等,谢谢 展开
C#语言实现 如果能用水晶报表实现,请帮我讲一下具体怎么操作,包括如何绑定数据等,谢谢 展开
展开全部
建议:新建一页面用来显示全部数据,点击打印,弹出此页(此页相当于打印预览).然后使用javascript直接打印这个页.
------- .aspx ->
<%@ Page Language="C#" AutoEventWireup="false" CodeFile="Print.aspx.cs" Inherits="Report_Print" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>打印预览</title>
</head>
<script type="text/javascript">
function Print(){
document.all.WebBrowser.ExecWB(7,1);
//window.print();
}
function window.onafterprint()
{
//window.close();
}
</script>
<body style="text-align:center;" >
<form id="form1" runat="server">
<object id="WebBrowser" classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2" width="0" height="0"></object>
~~~此处放gridview控件.
</form>
</body>
</html>
------- .cs ->
partial class Report_Print : PageBase
{
private void Page_Load(object sender, System.EventArgs e)
{
try {
GetSourceData();
Page.ClientScript.RegisterStartupScript(this.GetType(), "test", "Print();", true);
} catch (Exception ex) {
}
}
private void GetSourceData()
{
//此处为gridview绑定数据
}
}
------- .aspx ->
<%@ Page Language="C#" AutoEventWireup="false" CodeFile="Print.aspx.cs" Inherits="Report_Print" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>打印预览</title>
</head>
<script type="text/javascript">
function Print(){
document.all.WebBrowser.ExecWB(7,1);
//window.print();
}
function window.onafterprint()
{
//window.close();
}
</script>
<body style="text-align:center;" >
<form id="form1" runat="server">
<object id="WebBrowser" classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2" width="0" height="0"></object>
~~~此处放gridview控件.
</form>
</body>
</html>
------- .cs ->
partial class Report_Print : PageBase
{
private void Page_Load(object sender, System.EventArgs e)
{
try {
GetSourceData();
Page.ClientScript.RegisterStartupScript(this.GetType(), "test", "Print();", true);
} catch (Exception ex) {
}
}
private void GetSourceData()
{
//此处为gridview绑定数据
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我手上有一个比较好的方法,用JavaScript调用本地的Office
可以将GridView里的数据载入到Excel,预览并打印,
实现起来非常方便,用户体验相当好
缺点是本机必须安装了Office
可以将GridView里的数据载入到Excel,预览并打印,
实现起来非常方便,用户体验相当好
缺点是本机必须安装了Office
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
function printpage(m_printpage)
{
var newstr=document.getElementById(m_printpage).innerHTML;//document.all.item(m_printpage1).innerHTML
var oldstr = document.body.innerHTML;
document.body.innerHTML=newstr;
window.print();
document.body.innerHTML = oldstr;
return false;
}
{
var newstr=document.getElementById(m_printpage).innerHTML;//document.all.item(m_printpage1).innerHTML
var oldstr = document.body.innerHTML;
document.body.innerHTML=newstr;
window.print();
document.body.innerHTML = oldstr;
return false;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用Javascript的吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询