Wenn Sie von Anfang benötigen, betrachten Sie drucken Datagridview-Daten zeigen, in Crystelreport müssen unter Verwendung von XML
**(This is very helpful if you not using any database)**
- Erste make Datentabelle
- Dann werden die Daten In den Datentabelle (hier hinzufügen von DataGridview)
- XML-Datei erstellen
- Bericht ausführen
Hier Beispielcode
DataTable dt = new DataTable();
dt.Columns.Add("Item_Id", typeof(string));
dt.Columns.Add("Categry", typeof(string));
dt.Columns.Add("Item_Name", typeof(string));
dt.Columns.Add("Unit_Price", typeof(double));
dt.Columns.Add("Quantity", typeof(int));
dt.Columns.Add("Discount", typeof(string));
dt.Columns.Add("Total_Payable", typeof(double));
foreach (DataGridViewRow dgr in DGVsell.Rows)
{
dt.Rows.Add(dgr.Cells[0].Value, dgr.Cells[1].Value, dgr.Cells[2].Value, dgr.Cells[3].Value, dgr.Cells[4].Value, dgr.Cells[5].Value, dgr.Cells[6].Value);
}
ds.Tables.Add(dt);
ds.WriteXmlSchema("Bill.xml");
note Wenn hatte Fehler Xml Änderung App.config Datei machen als
<?xml version="1.0" encoding="utf-8"?>
<configuration>
</startup>-->
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
</configuration>
Nach maked XML-Datei folgen, können Sie auf den Aufruf Crystel Bericht
frmreport obj = new frmreport(); //load report viwer form
obj.ShowDialog();
in Bericht viwer
crBill cr = new crBill();
cr.SetDataSource(frmSell.ds);
crystalReportViewer1.ReportSource = cr;
crystalReportViewer1.RefreshReport();
crystalReportViewer1.Refresh();
Könnten Sie bitte den Code zum Laden des Berichts von xml posten? – Urik
@Urik: Es gibt keinen Code. Der Bericht ist an die XML-Datei gebunden. –
Aber verwenden Sie nicht etwas wie rpt.Database.Tables [0] .SetDataSource (ds_xml); ? – Urik