Compartir a través de


Información general sobre el control PrintPreviewDialog (Windows Forms)

El control de Windows Forms PrintPreviewDialog es un cuadro de diálogo preconfigurado que se usa para mostrar cómo aparece un PrintDocument cuando se imprime. Úselo dentro de la aplicación basada en Windows como una solución sencilla en lugar de configurar su propio cuadro de diálogo. El control contiene botones para imprimir, acercar, mostrar una o varias páginas y cerrar el cuadro de diálogo.

Propiedades y métodos clave

La propiedad de clave del control es Document, que establece la vista previa del documento. El documento debe ser un PrintDocument objeto . Para mostrar el cuadro de diálogo, debe llamar a su ShowDialog método. El anti-aliasing puede hacer que el texto aparezca más suave, pero también puede hacer que la visualización sea más lenta; para usarlo, establezca la propiedad UseAntiAlias a true.

Ciertas propiedades están disponibles a través del PrintPreviewControl que contiene el PrintPreviewDialog. (No es necesario agregar PrintPreviewControl al formulario; se incluye automáticamente dentro de PrintPreviewDialog cuando se agrega el cuadro de diálogo al formulario). Algunos ejemplos de propiedades disponibles a través PrintPreviewControl de son las Columns propiedades y Rows , que determinan el número de páginas mostradas horizontal y verticalmente en el control. Puede acceder a la Columns propiedad como PrintPreviewDialog1.PrintPreviewControl.Columns en Visual Basic, printPreviewDialog1.PrintPreviewControl.Columns en Visual C# o printPreviewDialog1->PrintPreviewControl->Columns en Visual C++.

Rendimiento de PrintPreviewDialog

En las condiciones siguientes, el PrintPreviewDialog control se inicializa lentamente:

  • Se usa una impresora de red.
  • Se modifican las preferencias del usuario para esta impresora, como la configuración dúplex.

La optimización no se aplica si usa el evento QueryPageSettings para modificar la configuración de la página.

Para aplicar la optimización, establezca la Switch.System.Drawing.Printing.OptimizePrintPreview opción de configuración en tiempo de ejecución en true.

La opción se puede establecer en el archivo de configuración deruntimeconfig.json o en el archivo de proyecto de una aplicación:

  • Configure un valor predeterminado en el archivo de proyecto.

    Para aplicar la configuración en el archivo del proyecto, habilite la generación de la configuración en tiempo de ejecución estableciendo <GenerateRuntimeConfigurationFiles>true</GenerateRuntimeConfigurationFiles> en un valor dentro de <PropertyGroup>. A continuación, agregue el ajuste <RuntimeHostConfigurationOption> a un <ItemGroup>.

    <Project Sdk="Microsoft.NET.Sdk">
    
      <!-- Other project settings ... -->
    
      <PropertyGroup>
        <GenerateRuntimeConfigurationFiles>true</GenerateRuntimeConfigurationFiles>
      </PropertyGroup>
    
      <ItemGroup>
        <RuntimeHostConfigurationOption Include="Switch.System.Drawing.Printing.OptimizePrintPreview" Value="true" />
      </ItemGroup>
    
    </Project>
    
  • Configure un valor predeterminado en el archivo de origenruntimeconfig.template.json.

    Para establecer la configuración predeterminada de la aplicación, aplique el ajuste en el archivo fuente runtimeconfig.template.json. Cuando la aplicación se compila o publica, el archivo de plantilla se usa para generar un archivo de configuración en tiempo de ejecución.

    {
      "configProperties": {
        "Switch.System.Drawing.Printing.OptimizePrintPreview": true
      }
    }
    

    Para obtener más información sobre la configuración del entorno de ejecución, consulte Configuración del entorno de ejecución de .NET.

  • Configure una aplicación publicada con el archivo de salida {appname}.runtimeconfig.json .

    Para configurar la aplicación publicada, aplique la configuración en la sección del archivo runtimeOptions/configProperties.

    {
      "runtimeOptions": {
        "configProperties": {
          "Switch.System.Drawing.Printing.OptimizePrintPreview": true,
        }
      }
    }
    

    Para obtener más información sobre la configuración del entorno de ejecución, consulte Configuración del entorno de ejecución de .NET.

Consulte también