2015-07-01 6 views
0

Как я могу добавить диалог выбора принтера и как я могу управлять полями страницы? Я пробовал так много вещей в коде (коды printdocument работают, но они не показывают мою форму), но они не сработали. Я использую этот код, чтобы распечатать форму:Выбор полей принтера и настроек страницы с компонентом формы печати

With Me.PrintForm1 
    .PrintAction = Printing.PrintAction.PrintToPreview 
    .Print(Me, PowerPacks.Printing.PrintForm.PrintOption.ClientAreaOnly) 
End With 

Me.Close() 

Это работает, но он не просит для выбора принтера, и я не могу контролировать рентабельность.

Благодаря

+0

'PrintForm1.PrinterSettings.DefaultPageSettings.Margins.Left = ...' – Plutonix

+0

Большое вам спасибо. Я нашел этот код: "Dim MyMargins As New Краев С MyMargins .left = 40 .right = 40 .Top = 40 .Bottom = 40 End With .PrinterSettings.DefaultPageSettings.Margins = MyMargins" Он тоже работает. – sanalmakina

ответ

0

Я нашел решение, наконец, вот оно:

PrintDialog1.PrinterSettings = PrintForm1.PrinterSettings 
    PrintDialog1.AllowSomePages = True 
    If PrintDialog1.ShowDialog = DialogResult.OK Then 
     PrintForm1.PrinterSettings = PrintDialog1.PrinterSettings 

     With Me.PrintForm1 
      .PrintAction = Printing.PrintAction.PrintToPreview 



      Dim MyMargins As New Margins 

      With MyMargins 
       .Left = 40 
       .Right = 40 
       .Top = 40 
       .Bottom = 40 
      End With 

      .PrinterSettings.DefaultPageSettings.Margins = MyMargins 

      PrintForm1.DocumentName = notasyon_lbl.Text 
      .Print(Me, PowerPacks.Printing.PrintForm.PrintOption.CompatibleModeClientAreaOnly) 

     End With 

    End If 

Спасибо в любом случае.

+0

это также работает: 'PrintForm1.PrinterSettings.DefaultPageSettings.Margins = New System.DrawingPrinting.Margins (5, 5, 5, 5)' – Chrisetiquette

 Смежные вопросы

  • Нет связанных вопросов^_^