日期:2014-05-18 浏览次数:21880 次
                PrintDialog printDialog = new PrintDialog();
                if (printDialog.ShowDialog() == DialogResult.OK)
                {
                    PrintDocument pd = new PrintDocument();
                    pd.PrinterSettings = printDialog.PrinterSettings;
                    pd.DefaultPageSettings.PaperSize = new PaperSize("custom", dm.Width, dm.Height);
                    //pd.DefaultPageSettings.Margins = new Margins(dm.OffsetX, 0, dm.OffsetY, 0);
                    pd.PrintPage += new PrintPageEventHandler(pd_PrintPage);
                    pd.Print();
                }
------解决方案--------------------
DocumentProperties的第4、5两个参数用于返回和设置配置数据,最后参数用于指定要执行的操作,如果该参数给0则只返回所需缓冲区的大小。详见MSDN中DocumentProperties函数的说明。