关于C#,VB.net的问题:点击完printpreviewdialog中的“打印按钮”后想让对话框自动关闭,代码怎么写?

在C#中,可以通过设置PrintDocument的PrintPage事件来实现打印功能,并且可以使用PrintPreviewDialog来进行预览。
当用户点击PrintPreviewDialog中的“打印”按钮时,会自动触发PrintDocument的PrintPage事件,并在该事件完成后自动关闭对话框。

VB.net代码
首先在弹出预览窗口的时候,加一个判断是否关闭的变量 PrintPreviewDialogClose,默认值为0

private  PrintPreviewDialogClose as integer =0
 Private Sub PrintPreview()
        PrintPreviewDialogClose = 0
        If _printDocument IsNot Nothing Then
            _PrintPreviewDialog.Document = _printDocument
            _PrintPreviewDialog.WindowState = FormWindowState.Maximized
            _PrintPreviewDialog.ShowDialog()
        End If
    End Sub
 End Sub

然后在PrintPage事件里面加变量的处理,因为在预览的时候会触发一次PrintPage事件,打印的时候也会触发一次。
所以预览窗口弹出的时候PrintPreviewDialogClose 将被赋值为1,
点击打印按钮的时候PrintPreviewDialogClose 为1,所以自动关闭预览窗体。

Private Sub PrintPage(ByVal sender As Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs)

        If PrintPreviewDialogClose > 0 Then
             _PrintPreviewDialog.Close()
         End If
        PrintPreviewDialogClose = 1
 End Sub

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值