C# 实现 ListView 打印类的设计与实现
C# ListView打印类 C# ListView打印类是指在C#编程语言中,使用ListView控件来实现打印功能的类。ListView控件是Windows Forms控件之一,用于显示列表数据。为了实现ListView的打印功能,我们需要创建一个继承自ListView的类,重写其中的打印相关方法。 在本例中,我们创建了一个名为PrintableListView的类,该类继承自ListView,并添加了打印相关的字段和方法。这些字段和方法包括PrintDocument、PageSetupDialog、PrintPreviewDialog、PrintDialog等,用于实现打印、预览和设置打印选项的功能。 PrintableListView类的主要字段包括: * m_printDoc:PrintDocument对象,用于打印文档 * m_setupDlg:PageSetupDialog对象,用于设置打印页格式 * m_previewDlg:PrintPreviewDialog对象,用于预览打印结果 * m_printDlg:PrintDialog对象,用于显示打印对话框 * m_nPageNumber:当前打印页码 * m_nStartRow和m_nStartCol:打印起始行和列 * m_bPrintSel:是否打印选中项 * m_bFitToPage:是否适应纸张大小 * m_fListWidth:ListView的宽度 * m_arColsWidth:每列的宽度 * m_fDpi:打印分辨率 PrintableListView类的主要方法包括: * PrintPreview():预览打印结果 * Print():执行打印操作 在使用PrintableListView类时,我们需要首先实例化该类,设置打印相关的选项,然后调用PrintPreview()或Print()方法来实现打印功能。 例如: ```csharp private PrintableListView listView1; this.listView1 = new PrintableListView(); listView1.PrintPreview(); ``` 在上面的代码中,我们首先实例化了PrintableListView类,然后调用PrintPreview()方法来预览打印结果。 PrintableListView类提供了一个灵活的打印解决方案,允许开发者自定义打印选项和格式,满足不同的打印需求。
private PrintableListView listView1;//listview改成PrintableListView
this.listView1 = new PrintableListView();
listView1.PrintPreview();
//======================================================
using System;
using System.Collections;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Windows.Forms;
using System.Drawing.Printing;
using System.Drawing.Drawing2D;
namespace 金蔷薇美发会员管理系统
{
/// <summary>
/// Summary description for PrintableListView.
/// </summary>
public class PrintableListView : System.Windows.Forms.ListView
{
// Print fields
private PrintDocument m_printDoc = new PrintDocument();
private PageSetupDialog m_setupDlg = new PageSetupDialog();
private PrintPreviewDialog m_previewDlg = new PrintPreviewDialog();
private PrintDialog m_printDlg = new PrintDialog();
private int m_nPageNumber=1;
private int m_nStartRow=0;
private bool m_bPrintSel=false;
private bool m_bFitToPage=false;
private float m_fListWidth=0.0f;
private float[] m_arColsWidth;
private float m_fDpi=96.0f;
private string m_strTitle="设置Title属性打印标题";
private string m_strCount="";
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.Container components = null;
#region 属性
/// <summary>
/// Gets or sets whether to fit the list width on a single page
/// </summary>
/// <value>
/// <c>True</c> if you want to scale the list width so it will fit on a single page.
/// </value>
/// <remarks>
/// If you choose false (the default value), and the list width exceeds the page width, the list
/// will be broken in multiple page.
/// </remarks>
剩余14页未读,继续阅读
- 粉丝: 2
- 资源: 7
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 李兴华Java基础教程:从入门到精通
- U盘与硬盘启动安装教程:从菜鸟到专家
- C++面试宝典:动态内存管理与继承解析
- C++ STL源码深度解析:专家级剖析与关键技术
- C/C++调用DOS命令实战指南
- 神经网络补偿的多传感器航迹融合技术
- GIS中的大地坐标系与椭球体解析
- 海思Hi3515 H.264编解码处理器用户手册
- Oracle基础练习题与解答
- 谷歌地球3D建筑筛选新流程详解
- CFO与CIO携手:数据管理与企业增值的战略
- Eclipse IDE基础教程:从入门到精通
- Shell脚本专家宝典:全面学习与资源指南
- Tomcat安装指南:附带JDK配置步骤
- NA3003A电子水准仪数据格式解析与转换研究
- 自动化专业英语词汇精华:必备术语集锦