다음을 통해 공유


PrintPreviewDialog 컨트롤 개요(Windows Forms)

Windows Forms PrintPreviewDialog 컨트롤은 인쇄 시 PrintDocument가 어떻게 나타나는지를 표시하는 데 사용되는 미리 구성된 대화 상자입니다. 고유한 대화 상자를 구성하는 대신 Windows 기반 애플리케이션 내에서 간단한 솔루션으로 사용합니다. 컨트롤에는 인쇄, 확대, 한 페이지 또는 여러 페이지 표시 및 대화 상자 닫기 단추가 포함되어 있습니다.

키 속성 및 메서드

컨트롤의 키 속성은 문서를 미리 볼 수 있도록 설정하는 Document입니다. 문서는 PrintDocument 개체여야 합니다. 대화 상자를 표시하려면 해당 ShowDialog 메서드를 호출해야 합니다. 앤티앨리어싱은 텍스트를 더 부드럽게 표시할 수 있지만 표시 속도가 느려질 수도 있습니다. 이 속성을 사용하려면 UseAntiAlias 속성을 true로 설정합니다.

특정 속성은 PrintPreviewDialog에 포함된 PrintPreviewControl을 통해 사용할 수 있습니다. (이 PrintPreviewControl을 양식에 추가할 필요가 없습니다. 양식에 대화 상자를 추가할 때 PrintPreviewDialog 내에 자동으로 포함됩니다.) PrintPreviewControl을 통해 사용할 수 있는 속성의 예로는 컨트롤에 가로 및 세로로 표시되는 페이지 수를 결정하는 ColumnsRows 속성이 있습니다. Visual Basic의 PrintPreviewDialog1.PrintPreviewControl.Columns, Visual C#의 printPreviewDialog1.PrintPreviewControl.Columns 또는 Visual C++의 printPreviewDialog1->PrintPreviewControl->Columns과 같이 Columns 속성에 액세스할 수 있습니다.

PrintPreviewDialog 성능

다음 조건에서 PrintPreviewDialog 컨트롤은 매우 느리게 초기화됩니다.

  • 네트워크 프린터가 사용됩니다.
  • 이 프린터에 대한 사용자 기본 설정(예: 이중 설정)이 수정됩니다.

.NET Framework 4.5.2에서 실행되는 앱의 경우 구성 파일의 <appSettings> 섹션에 다음 키를 추가하여 PrintPreviewDialog 컨트롤 초기화의 성능을 향상시킬 수 있습니다.

<appSettings>
   <add key="EnablePrintPreviewOptimization" value="true" />
</appSettings>

EnablePrintPreviewOptimization 키가 다른 값으로 설정되거나 키가 없는 경우 최적화가 적용되지 않습니다. 애플리케이션이 .NET Framework 4.6 이상에서 실행되는 경우에는 이 키가 적용되지 않습니다.

.NET Framework 4.6 이상 버전에서 실행되는 앱의 경우 앱 구성 파일의 <런타임> 섹션에 있는 <AppContextSwitchOverrides> 요소에 다음 스위치를 추가할 수 있습니다.

<runtime >
   <!-- AppContextSwitchOverrides values are in the form of 'key1=true|false;key2=true|false -->
   <AppContextSwitchOverrides value = "Switch.System.Drawing.Printing.OptimizePrintPreview=true" />
</runtime >

스위치가 없거나 다른 값으로 설정된 경우 최적화가 적용되지 않습니다.

QueryPageSettings 이벤트를 사용하여 프린터 설정을 수정하는 경우 최적화 구성 스위치가 설정된 경우에도 PrintPreviewDialog 컨트롤의 성능이 향상되지 않습니다.

참고 항목