web-dev-qa-db-ja.com

設計時にデータセットを持たずにXtraReportsのフィールドのデータソースを設定するにはどうすればよいですか?

XtraReportsレポートツールを調べていますが、まだ取得していないものがあります。

設計時に接続、アダプター、およびデータセットを構築する必要はなく、プログラムで行うことなく、特定のフィールド(レポートにラベルとして表示される)のデータソースを設定するにはどうすればよいですか。

たとえば、UserId、Username、Passwordの3つのフィールドを持つ「User」というテーブルを作成できます。レポートデザイナで、3つのラベルを配置し(これが私の質問です)、3つのデータベースフィールドを表示するためのデータソースを設定します。次に、コードビハインドで、接続を作成し、コマンドを実行し、データセットに入力し、レポートインスタンスを作成し、データテーブルをそれに渡し、レポートのプレビューを表示します。

これは可能ですか?はっきりしない場合はお知らせください。

ありがとう!

10
Sebastian

データセットなしでレポートを作成するには、IListオブジェクトを使用します...したがって、この素敵なチュートリアルに従ってください

方法:Webレポートを配列リストにバインドするhttps://documentation.devexpress.com/#XtraReports/CustomDocument3851

5
Jalal El-Shaer

はい、可能です。コードで必要なデータバインディングを定義できます。

this.xrLabel1.DataBindings.Add(new DevExpress.XtraReports.UI.XRBinding("Text", data, "Name", "aaa"));
  • ここのテキストはXrLabelクラスのプロパティです。バインドされたフィールドをラベルのテキストとして表示したいとします。
  • データはデータを含むオブジェクトです
  • 「名前」は表示したいフィールドの名前です
  • 「aaa」は表示形式で、カスタム形式で値を表示する場合に適用できます

基本的に、XtraReportのデータバインディングは、標準のウィンドウがデータバインディングを形成するのとほとんど同じように機能します。

もっとガイドラインが必要か教えてください

4
Przemaas

これが代替案です。

rtpObject.DataSourceSchema = dataSet.GetXmlSchema();
2
Appyks

このsetmodifierプロパティをpublicとして実行する前に

InvoicePrinting_Rpt InvoicePrintingRpt = new InvoicePrinting_Rpt();//report object 

InvoicePrintingRpt.BillDetails.Report.DataSource = ds_Invoice;
InvoicePrintingRpt.Report.DataMember = ds_Invoice.Tables[0].TableName;
 //bellow third parameter as your column name.
InvoicePrintingRpt.lbl_BillHead.DataBindings.Add("Text", null, "BILL_DESCRIPTION");
InvoicePrintingRpt.lbl_Det_Date.DataBindings.Add("Text", null, "TRANSACTION_DATE");
InvoicePrintingRpt.lbl_ISINCode.DataBindings.Add("Text", null, "ISIN_CODE");

ReportViewer1.Report = InvoicePrintingRpt;//assign report obj   
ReportViewer1.Report.Name = "DevExpress_Reports.InvoicePrinting_Rpt";
ReportViewer1.DataBind(); //binding
1
Vinayak
XRBinding binding = new XRBinding("Text", ageingBindingSource, "ageing_contactsLookup.name");
this.xrLabel19.DataBindings.Add(binding);

//または//

XRBinding binding = new XRBinding("Text", dbaDataSet, "transactions.fk_transitems_transactionid.name2");
this.xrTableCell1.DataBindings.Add(binding);
1
Donot Don't