已经实现了打印及打印预览,请问如何实现下面功能:
1、在预览窗体中增加一个Button(打印指定页),并在其Click事件,实现指定范围打印; 
2、我在调用打印的时候弹出了,打印设置了,怎么不起作用?
 private bool SetupThePrinting()
        {
            PrintDialog MyPrintDialog = new PrintDialog();
            MyPrintDialog.AllowCurrentPage = false;
            MyPrintDialog.AllowPrintToFile = false;
            MyPrintDialog.AllowSelection = false;
            MyPrintDialog.AllowSomePages = true ;
            MyPrintDialog.PrintToFile = false;
            MyPrintDialog.ShowHelp = false;
            MyPrintDialog.ShowNetwork = false;            if (MyPrintDialog.ShowDialog() != DialogResult.OK)
                return false;            printDoc.DocumentName = "商品标签打印";
            printDoc.PrinterSettings = MyPrintDialog.PrinterSettings;
            printDoc.DefaultPageSettings = MyPrintDialog.PrinterSettings.DefaultPageSettings;
            printDoc.DefaultPageSettings.Margins = new Margins(40, 40, 40, 40);             
      
            return true;
        } if (SetupThePrinting())
 {
   PrintPreviewDialog MyPrintPreviewDialog = new PrintPreviewDialog();
   Form frm = MyPrintPreviewDialog.ParentForm;
   MyPrintPreviewDialog.Document = this.printDoc;
   ((Form)MyPrintPreviewDialog).WindowState = FormWindowState.Maximized; 
   MyPrintPreviewDialog.ShowDialog();                        
 }

解决方案 »

  1.   

    设定PrintDocument.PrinterSettings.FromPage 和PrintDocument.PrinterSettings.FromPage.ToPage外,还要设置PrintDocument.PrinterSettings.PrintRange = System.Drawing.Printing.PrintRange.SomePages;让设置起作用。
    e.HasMorePages = false; //停止增加新的页数
    http://blog.csdn.net/zhuzhao/archive/2008/12/25/3604731.aspx
      

  2.   


      this.priDoc.PrinterSettings.FromPage;
      this.priDoc.PrinterSettings.ToPage; 这两个属性传送门
      

  3.   

    打印的时候设置FromPage和ToPage这两个属性就行了