Anda di halaman 1dari 3

Imprimir en C#

1. Primero, vamos a suponer que se tiene en un DataGridView información que se desea


Imprimir.

El código del Botón “Listar Categoría” podría ser este:

ClassBLL Logica = new ClassBLL();


DataTable tabla = new DataTable();
tabla = Logica.Listado("Categorias");

this.dataGridView1.DataSource = tabla;
this.dataGridView1.Refresh();

2. En la vista de diseño de Formulario, Insertamos un control llamado “PrintDocument”, el cual


se encuentra bajo la categoría “Printing”, podemos cambiarle el nombre sino se quedara con
el nombre “PrintDocument1”. Una definición de este control podría ser el siguiente;
a. Se utiliza para establecer las propiedades que describen qué se imprime y la
posibilidad de imprimir el documento entre distintas aplicaciones de Windows.
Puede utilizarse junto con el componente PrintDialog para controlar todos los
aspectos de la impresión de documentos.
3. Ahora seleccionar el control “PrintDocumentq1” y hacer doble click en el evento “PrintPage”.

el cual se produce cuando se necesita el resultado que se va a imprimir para la página actual,
creando el código siguiente:

private void printDocument1_PrintPage(object sender,


System.Drawing.Printing.PrintPageEventArgs e)
{
//Se define el estilo de la letra
Font Letra = new Font("Times New Roman",14,FontStyle.Italic);
//Se define el estilo del color
SolidBrush Estilo = new SolidBrush(Color.Blue);
//Es un contador para que imprima en lineas distintas
int linea = 75;
//Este ciclo lee las filas del DataGridView
for (int x = 0; this.dataGridView1.Rows.Count-1>x;x++)
{
//Esta instruccion se usa para dibujar algo en la pagina, en este
caso imprimir
//requiere el texto, tipo de letra, estilo y ubicacion del dibujo.

e.Graphics.DrawString(this.dataGridView1.Rows[x].Cells[1].Value.ToString(), Letra,
Estilo, 100, linea);
//en este ejemplo se imprime el nombre de la categoría
//Se aumenta el contador.
linea += 25;
}
}

4. Ahora nos pasamos a la vista de diseño y hacemos doble click en el botón Imprimir, en el cual
escribiremos el código final para enviar a imprimir.
private void buttonImprimir_Click(object sender, EventArgs e)
{
this.printDocument1.Print();
}

Anda mungkin juga menyukai