PrintDocument.QueryPageSettings 이벤트
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
각 PrintPage 이벤트 바로 전에 발생합니다.
public:
event System::Drawing::Printing::QueryPageSettingsEventHandler ^ QueryPageSettings;
public event System.Drawing.Printing.QueryPageSettingsEventHandler QueryPageSettings;
member this.QueryPageSettings : System.Drawing.Printing.QueryPageSettingsEventHandler
Public Custom Event QueryPageSettings As QueryPageSettingsEventHandler
이벤트 유형
예제
다음 코드 예제에서는 프린터에서 지원하는 경우 첫 번째 페이지가 색인 문서를 인쇄합니다. 이 예제에서는 라는 printDoc
변수를 PrintDocument 만들고 PrintPage 및 QueryPageSettings 이벤트를 처리해야 합니다. 변수는 currentPageNumber
모든 페이지가 표시되지 않는 이벤트에 인쇄된 PrintPage 후 증가합니다.
이 예제에서는 System.Drawing 및 System.Drawing.Printing 네임스페이스를 사용합니다.
private:
void MyButtonPrint_OnClick( Object^ sender, System::EventArgs^ e )
{
// Set the printer name and ensure it is valid. If not, provide a message to the user.
printDoc->PrinterSettings->PrinterName = "\\mynetworkprinter";
if ( printDoc->PrinterSettings->IsValid )
{
// If the printer supports printing in color, then override the printer's default behavior.
if ( printDoc->PrinterSettings->SupportsColor )
{
// Set the page default's to not print in color.
printDoc->DefaultPageSettings->Color = false;
}
// Provide a friendly name, set the page number, and print the document.
printDoc->DocumentName = "My Presentation";
currentPageNumber = 1;
printDoc->Print();
}
else
{
MessageBox::Show( "Printer is not valid" );
}
}
void MyPrintQueryPageSettingsEvent( Object^ sender, QueryPageSettingsEventArgs^ e )
{
// Determines if the printer supports printing in color.
if ( printDoc->PrinterSettings->SupportsColor )
{
// If the printer supports color printing, use color.
if ( currentPageNumber == 1 )
{
e->PageSettings->Color = true;
}
}
}
private void MyButtonPrint_OnClick(object sender, System.EventArgs e)
{
// Set the printer name and ensure it is valid. If not, provide a message to the user.
printDoc.PrinterSettings.PrinterName = "\\mynetworkprinter";
if (printDoc.PrinterSettings.IsValid) {
// If the printer supports printing in color, then override the printer's default behavior.
if (printDoc.PrinterSettings.SupportsColor) {
// Set the page default's to not print in color.
printDoc.DefaultPageSettings.Color = false;
}
// Provide a friendly name, set the page number, and print the document.
printDoc.DocumentName = "My Presentation";
currentPageNumber = 1;
printDoc.Print();
}
else {
MessageBox.Show("Printer is not valid");
}
}
private void MyPrintQueryPageSettingsEvent(object sender, QueryPageSettingsEventArgs e)
{
// Determines if the printer supports printing in color.
if (printDoc.PrinterSettings.SupportsColor) {
// If the printer supports color printing, use color.
if (currentPageNumber == 1 ) {
e.PageSettings.Color = true;
}
}
}
Private Sub MyButtonPrint_OnClick(ByVal sender As Object, ByVal e As System.EventArgs)
' Set the printer name and ensure it is valid. If not, provide a message to the user.
printDoc.PrinterSettings.PrinterName = "\\mynetworkprinter"
If printDoc.PrinterSettings.IsValid Then
' If the printer supports printing in color, then override the printer's default behavior.
if printDoc.PrinterSettings.SupportsColor then
' Set the page default's to not print in color.
printDoc.DefaultPageSettings.Color = False
End If
' Provide a friendly name, set the page number, and print the document.
printDoc.DocumentName = "My Presentation"
currentPageNumber = 1
printDoc.Print()
Else
MessageBox.Show("Printer is not valid")
End If
End Sub
Private Sub MyPrintQueryPageSettingsEvent(ByVal sender As Object, ByVal e As QueryPageSettingsEventArgs)
' Determines if the printer supports printing in color.
If printDoc.PrinterSettings.SupportsColor Then
' If the printer supports color printing, use color.
If currentPageNumber = 1 Then
e.PageSettings.Color = True
End If
End If
End Sub
설명
다른 페이지 설정을 사용하여 문서의 각 페이지를 인쇄할 수 있습니다. 속성의 QueryPageSettingsEventArgs.PageSettings 개별 속성을 수정하거나 속성을 로 설정 PageSettings하여 페이지 설정을 지정합니다. 변경 내용은 PageSettings 문서의 기본 페이지 설정이 아닌 현재 페이지에만 영향을 미칩니다. 에 대해 QueryPageSettingsEventArgs속성을 로 설정 Cancel 하여 인쇄 작업을 취소할 true
수도 있습니다.
이벤트를 이벤트 처리기와 연결하려면 대리자의 QueryPageSettingsEventHandler instance 이벤트에 추가합니다. 이벤트 처리기는 이벤트가 발생할 때마다 호출됩니다. 대리자를 사용 하 여 이벤트를 처리 하는 방법에 대 한 자세한 내용은 참조 하세요. 이벤트 처리 및 발생합니다.
QueryPageSettings 이벤트를 사용하여 프린터 설정을 수정하는 경우 최적화 구성 스위치가 설정된 경우에도 PrintPreviewDialog 컨트롤의 성능이 향상되지 않습니다. 자세한 내용은 PrintPreviewDialog 컨트롤 개요를 참조하세요.
적용 대상
추가 정보
.NET