问题描述
vs.net2008做的水晶报表,怎样才能在客户端打印?我做的系统要放在internet上,现在提示找不到打印机,在本地有装vs的机器运行没问题的。m.SetParameterValue("abc",DropDownList1.Text);m.SetParameterValue("c",TextBox1.Text);m.SetParameterValue("d",TextBox2.Text);m.SetParameterValue("e",GridView1.Rows[GridView1.SelectedIndex].Cells[2].Text);m.SetParameterValue("f",GridView1.Rows[GridView1.SelectedIndex].Cells[3].Text);m.PrintToPrinter(1,true,1,1);
解决方案
解决方案二:
没有人用这个功能吗?我不想导出pdf再打印,或者有没有其它报表控件可以实现该功能
解决方案三:
一个思路是做成ActiveX插件,调用服务获取数据后在客户端打印。
解决方案四:
页面后台的按钮事件里写:protectedvoidbtnPrint_Click(objectsender,EventArgse){Page.RegisterStartupScript("","<script>document.all.WebBrowser.ExecWB(7,1);<"+"/script>");}
页面前台:<headrunat="server"><metacontent="MicrosoftVisualStudio.NET7.1"name="GENERATOR"><metacontent="C#"name="CODE_LANGUAGE"><metacontent="JavaScript"name="vs_defaultClientScript"><metacontent="http://schemas.microsoft.com/intellisense/ie5"name="vs_targetSchema"><METAhttp-equiv="Expires"content="-1"><stylemedia="print">.Noprint{DISPLAY:none}</style></head><bodystyle="width:100%;text-align:center;"><formid="form1"runat="server"><OBJECTid="WebBrowser"height="0"width="0"classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"VIEWASTEXT><PARAMNAME="ExtentX"VALUE="26"><PARAMNAME="ExtentY"VALUE="26"><PARAMNAME="ViewMode"VALUE="0"><PARAMNAME="Offline"VALUE="0"><PARAMNAME="Silent"VALUE="0"><PARAMNAME="RegisterAsBrowser"VALUE="0"><PARAMNAME="RegisterAsDropTarget"VALUE="1"><PARAMNAME="AutoArrange"VALUE="0"><PARAMNAME="NoClientEdge"VALUE="0"><PARAMNAME="AlignLeft"VALUE="0"><PARAMNAME="NoWebView"VALUE="0"><PARAMNAME="HideFileNames"VALUE="0"><PARAMNAME="SingleClick"VALUE="0"><PARAMNAME="SingleSelection"VALUE="0"><PARAMNAME="NoFolders"VALUE="0"><PARAMNAME="Transparent"VALUE="0"><PARAMNAME="ViewID"VALUE="{0057D0E0-3573-11CF-AE69-08002B2E1262}"></OBJECT><divstyle="width:100%;text-align:center"class="Noprint"><asp:ButtonID="btnPrint"runat="server"Text="确定打印"OnClick="btnPrint_Click"/></div></form></body>
解决方案五:
参考相关: