C#基于C/S模式开发的打印功能如何实现?

本人运用开发工具VS2008和数据库SQL2000制作了一个管理系统,想要实现打印Datagridview列表经过条件查询后的内容,那么使用C#语言、基于C/S模式开发的... 本人运用开发工具VS 2008 和数据库 SQL 2000 制作了一个管理系统,想要实现打印Datagridview 列表经过条件查询后的内容,那么使用C#语言、基于C/S模式开发的打印功能如何实现?请高手提供源码例子、描述下制作原理及使用什么第三方控件?顺便给个关于第三方控件的合法下载地址~若使用开发工具VS 2008 自带的打印控件,请注明控件名称,谢谢~ 无奈の我~ ╮(╯▽╰)╭ 展开
 我来答
匿名用户
2013-07-09
展开全部
楼主,你好,这是我以前摘抄过的东西,你看看对你有用吧。。。 NET Framework提供了一些重要的打印类:
PrintDocument: PrintDocument 用于将输出发送到打印机。可实例化一个 PrintDocument,设置一些属性描述打印的内容,然后调用 Print 方法。PrintDocument 为要打印的每一页引发 PrintPage 事件。可向此事件的事件处理程序添加打印逻辑。
PrinterSettings: 有关应如何打印文档的信息。这包括在哪个打印机上打印该文档。
PageSettings: 有关应如何打印页的信息。
PrintPageEventArgs: PrintDocument 上 PrintPage 事件的数据。它为打印图面提供剪辑矩形和 Graphics 对象。
PrintEventArgs: PrintDocument 上 BeginPrint 和 EndPrint 事件的数据。允许取消打印作业。
PrintDialog: 打印机选项对话框。
PageSetupDialog: 页属性对话框。
PrintPreviewControl: 显示 PrintDocument 的控件。允许创建打印预览对话框。
PrintPreviewDialog: 通过使用 PrintPreviewControl 显示 PrintDocument 的对话框。
根据您的需要,提供一些简单的打印源代码,供您参考:
private void btnPrint_Click(object sender, System.EventArgs e)
{
try
{
streamToPrint = new StreamReader ("PrintMe.Txt");
try
{
printFont = new Font("Arial", 10);
PrintDocument pd = new PrintDocument();
pd.PrintPage += new PrintPageEventHandler(this.pd_PrintPage);
pd.Print();
}
finally
{
streamToPrint.Close() ;
}
}
catch(Exception ex)
{
MessageBox.Show("打印文件时发生错误 - " + ex.Message);
}
}
请根据您系统的实际情况,将提供的代码进行修改。希望以上答复给您带来帮助。
另外,Visual Studio.NET也提供了一些打印及打印预览的简单例子和源代码[C:\Program Files\Microsoft Visual Studio .Net\FrameworkSDK\Samples\quickstart\winforms\Samples\Printing\SimplePad ],可供您参考。
睢鸠静皖0I4
推荐于2016-11-11 · TA获得超过226个赞
知道小有建树答主
回答量:170
采纳率:100%
帮助的人:92.1万
展开全部
Microsoft .Net Framework的打印功能都以组件的方式提供,为程序员提供了很大的方便。

实现打印功能的核心是PrintDocument类这个类属于System.Drawing.Printing名字空间这个类封装了当前的打印设置页面设置以及所有的与打印有关的事件和方法

1 在应用程序窗体初始化时构造PrintDocument对象,添加 printDocument 的 PrintPage 方法
2 实现PrintPage方法
3 在用户的单击事件中调用 printDocument 的 Print方法实现打印功能
在这中间可能要用到 PrintDialog PrintPreviewDialog PageSetupDialog 设置和查看打印效果这些方法通常是由菜单的单击触发的。

具体的实现代码看http://www.cnblogs.com/huangfr/archive/2011/09/25/2190579.html
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
推荐于2018-05-06
展开全部
我是按照纸张大小画成Image
如果超过一张
就画多个image
打印的时候,直接打印Image
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式