www.pudn.com > PrintDataGridViewDemo.rar > Form1.cs, change:2013-07-08,size:3295b


using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Data; 
using System.Data.OleDb; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.Windows.Forms; 
using System.Data.SqlClient; 
using System.Drawing.Printing; 
namespace ColorDemo 
{ 
    public partial class Form1 : Form 
    { 
        public Form1() 
        { 
            InitializeComponent(); 
        } 
 
        //public DataSet ExecuteDataSet(string sql) 
        //{ 
        //    string strCon = "server=.;Database=Northwind;uid=sa;pwd=123456"; 
        //    SqlConnection con = new SqlConnection(strCon); 
        //    SqlCommand cmd = new SqlCommand(sql, con); 
        //    SqlDataAdapter da = new SqlDataAdapter(cmd); 
        //    DataSet ds = new DataSet(); 
        //    da.Fill(ds); 
        //    con.Close(); 
        //    return ds; 
        //} 
 
        private void Form1_Load(object sender, EventArgs e) 
        { 
           // dgvInfo2.DataSource = ExecuteDataSet("select * from Products").Tables[0]; 
            OleDbConnection con1 = new OleDbConnection(); 
            con1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + System.Windows.Forms.Application.StartupPath + "\\HeDao.mdb"; 
            con1.Open(); 
            string sql = "select * from 工程量估算"; 
            OleDbDataAdapter ad = new OleDbDataAdapter(sql, con1); 
            DataTable dt = new DataTable(); 
            ad.Fill(dt); 
            dgvInfo2.DataSource = dt.DefaultView; 
            dgvInfo2.Refresh(); 
            con1.Close(); 
            
        } 
         private void PrintDocument_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e) 
        { 
             
        } 
 
 
 
        private void btnPrint_Click(object sender, EventArgs e) 
        { 
            //this.ppd.ShowDialog(); 
            this.pdGrid.ShowDialog(); 
 
        } 
 
        private void printPreviewDialog1_Load(object sender, EventArgs e) 
        { 
         
        } 
 
        private void PrintDataGridView_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e) 
        { 
            
        } 
 
        private void pdGrid_PrintPage(object sender, PrintPageEventArgs e) 
        { 
            Font font = new Font("宋体", 12); 
            SizeF s = e.Graphics.MeasureString("菜单信息", font); 
            //Point offset = e.MarginBounds.Location;//e.MarginBounds用户的打印区域 
            //e.Graphics.DrawString("菜单信息",font,Brushes.Black,new PointF(offset.X+(e.MarginBounds.Width-s.Width)/2.0f,offset.Y)); 
            //offset.Offset(0,(int)Math.Round(s.Height)+10); 
            //e.Graphics.DrawImage( 
            e.Graphics.DrawString("菜单信息", font, Brushes.Red, 400, 20); 
            e.Graphics.DrawString("时间" + DateTime.Now.ToLongDateString(), font, Brushes.Black, 20, 40); 
            int x = 10; 
            int y = 70; 
 
            this.pdGrid.Print(dgvInfo2, true, e, ref x, ref y);    //注意:PrintDataGridView该类位于上面所写的业务逻辑层之中 
        } 
 
        private void button1_Click(object sender, EventArgs e) 
        { 
            PrintDGV.Print_DataGridView(this.dgvInfo2); 
        } 
    } 
}