2017-02-27 14 views
0

私はデフォルトでデータソースを持つrpxファイルを持っています。私はそれをロードし、ユーザーが別のデータソースを使用したいかどうかをチェックしたい。私はすでにSectionReportオブジェクトのデータソースを上書きして、loadlayoutメソッドのためにそれを送る前にリーダーを実行しています。フィールドをテキストボックスにマップする必要があるのですか、データソースを変更するために何かが欠けていますか?rpxファイルのデータソースをc#でアクティブなレポートに上書きする方法は?

答えて

1

新しいデータソースに元のデータソースとは異なるフィールド(列)がある場合は、レポートのFieldsコレクションにフィールドを追加し、TextBoxのDataFieldプロパティを新しいフィールドに変更する必要があります新しいデータを表示します。 http://arhelp.grapecity.com/webhelp/AR11/index.html#BindReportstoaDataSource.html

編集: あなたは、次のようにレポートのデータソースの単なる接続文字列を変更することができます。

SectionReport rpt = new SectionReport(); 
XmlTextReader xtr = new XmlTextReader("../../Invoice1.rpx"); 
rpt.LoadLayout(xtr);    

var dataSource = rpt.DataSource as GrapeCity.ActiveReports.Data.OleDBDataSource; 
dataSource.ConnectionString = @"Provider = Microsoft.Jet.OLEDB.4.0; Data Source =C:\BILL.mdb; Persist Security Info = False"; 

rpt.Run(); 

viewer1.LoadDocument(rpt); 
+0

次のドキュメントのリンクにある「結合していないデータソースを使用するには、」トピックを見てみましょう実際に私が本当に必要としている他の質問は、接続文字列を変更するだけで、ファイルの接続文字列を上書きすることが可能です。 – UserEsp

関連する問題