print imprimir form example ejemplos c# winforms printing report

imprimir - print form c# example



Imprimir y hacer informes en c#winform (2)

Crystal Reports funcionará perfectamente para usted. En realidad, puedes generar informes sin una base de datos. Echa un vistazo a este proyecto y debería ayudarte a comenzar y es exactamente lo que estás tratando de hacer.

¡Esto te ayuda!

Utilicé en Delphi QuickReport para crear informes e imprimir. ¿Qué puedo usar para hacer esto en .NET C #?

Agregué algunos elementos de informe (informes de Microsoft e informes de Crystal) a mi proyecto (aplicación Winforms), pero lo que vi es que solo puedo insertar datos de una base de datos. Lo que quiero es usar los valores de los objetos creados en tiempo de ejecución. Esto se debe a que mis informes en realidad consisten en recibos y facturas.

¿Cuál es la mejor herramienta para usar para mi necesidad?


Puede usar los informes integrados para generar informes agradables sin requerir una base de datos.

Cree una clase para sus datos, en mi caso, voy a crear una clase de persona:

class Person { public string FirstName { get; set; } public string LastName { get; set; } public string AddressLine1 { get; set; } public string AddressLine2 { get; set; } }

  • A continuación, agregaré un informe usando el asistente de informes (Agregar nuevo elemento -> Informes -> Asistente de informes).

  • Para el origen de datos, voy a seleccionar Objeto y luego dirigirlo a mi clase Persona.

  • Seleccione las columnas que desea para sus detalles, solo estoy arrastrando todos ellos en los valores para simplificar.

  • Recorra el resto del asistente simplemente seleccionando los valores predeterminados y luego debería ver su informe.

  • Ahora puede agregar un control ReportViewer a un formulario y establecer el informe en el informe que acaba de crear. Esto también debería crear un PersonBindingSource en su formulario.

  • Establezca los datos de PersonBindingSource en una lista en la memoria:

    BindingList<Person> myPeople = new BindingList<Person>(); myPeople.Add(new Person() { FirstName = "John" , LastName = "Doe"}); myPeople.Add(new Person() { FirstName = "Jane" , LastName = "Doe"}); myPeople.Add(new Person() { FirstName = "Jerry" , LastName = "Smithers" }); PersonBindingSource.DataSource = myPeople; reportViewer1.RefreshReport(); this.reportViewer1.RefreshReport();

Con el informe final se ve así: