PrintPreviewDialog - zakázať tlač   zodpovězená otázka

VB.NET, WinForms, Tisk

Dobrý deň. Je možné vo VB .NET zakázať tlač z PrintPreviewDialog?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Ano, je to možné. Musíte si odchytit událost BeginPrint, která se vyvolá na PrintDocumentu, který je dosazen do PrintPreviewDialogu. Argumenty této události jsou typu PrintEventArgs, který má vlastnost Cancel, jejíž nastavení na True tisk zakáže. Následovně:

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
  Dim document = New Printing.PrintDocument()
  AddHandler document.BeginPrint,
    Sub(sender2 As Object, e2 As Printing.PrintEventArgs)
      e2.Cancel = True
    End Sub
  PrintPreviewDialog1.Document = document
  PrintPreviewDialog1.ShowDialog()
End Sub

Událost se vyvolá jednou hned při zobrazení ShowDialog() a pak pokaždé, pokud uživatel klikne na ikonu tiskárny v PrintPreviewDialogu. Já tady handler na událost navěšuji pokaždé při stisku tlačítka. Vy byste to měl mít tak, že jí navěsíte pokaždé, když se vytvoří a dosadí nový PrintDocument.

nahlásit spamnahlásit spam 4 / 4 odpovědětodpovědět

Ďakujem pán Clarai

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:  
Heslo:  

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback