La clase PrintPreviewDialog es en realidad una envoltura alrededor de la clase PrintPreviewControl y es lo que está suministrando los botones en la barra de herramientas. Cualquier forma puede acoger la PrintPreviewControl así que lo que tendría que hacer es acoger la PrintPreviewControl en una forma de diálogo se crea:
public partial class PreviewDialog : Form
{
public PreviewDialog() {
this.printPreviewControl1 = new System.Windows.Forms.PrintPreviewControl();
this.SuspendLayout();
//
// printPreviewControl1
//
this.printPreviewControl1.Dock = System.Windows.Forms.DockStyle.Fill;
this.printPreviewControl1.Location = new System.Drawing.Point(0, 0);
this.printPreviewControl1.Name = "printPreviewControl1";
this.printPreviewControl1.Size = new System.Drawing.Size(292, 273);
this.printPreviewControl1.TabIndex = 0;
this.printPreviewControl1.Columns = 1;
this.printPreviewControl1.Zoom = 1.0;
}
}
La propiedad Columnas que actualmente está siendo puesto a 1 es el número de páginas que muestra el control horizontalmente a través de la pantalla. La propiedad Zoom establece la escala de las páginas, siendo 1.0 la página completa; entonces < 1.0 sería una imagen reducida y> 1.0 sería una imagen expandida en el control por página. Lo que le gustaría hacer a la clase PreviewDialog anterior es agregarle un System.Windows.Forms.ToolStrip y luego agregar botones para manejar el zoom, y páginas según las propiedades mencionadas (Columnas y Zoom).
En la forma que traerá a la vista previa (no la forma PreviewDialog) que tendría un código como los siguientes:
private void buttonPrintPreview_Click(object sender, EventArgs e) {
PreviewDialog dlg = new PreviewDialog();
dlg.ShowDialog();
return;
}
espera que esto ayuda a
posible duplicado de [¿Cómo puedo cambiar el texto en una ventana de Win32?] (Http://stackoverflow.com/questions/2668731/how -can-i-change-text-on-a-win32-window) –
Mismo enfoque, pero pinvoke EnableWindow en su lugar. –