2012-11-22 106 views
7

report.rdlcファイルのレポートと一緒にロゴとして外部写真を追加しようとしています。このエラーがありますenable externalimagesプロパティがこのレポートに設定されていませんか?

The enable externalimages property has not been set for this report

enter image description here

ここに私のコードです。

try 
{ 
    this.pedidosTableAdapter.Connection.ConnectionString = con.MysqlConnect(); 

    this.pedidosTableAdapter.Fill(this.fabricacaoDataSet8.pedidos, Pages.relatorios.num); 
    this.reportViewer1.RefreshReport(); 
} 
catch { } 

// for external image 
this.reportViewer1.LocalReport.EnableExternalImages = true; 
ReportParameter parm = new ReportParameter(); 
parm=(new ReportParameter("path", @"C:\logo.jpg",true)); 
this.reportViewer1.LocalReport.SetParameters(parm); 
this.reportViewer1.Refresh(); 
+0

あなたが投稿したコードは、問題の一部である可能性のある通知なしに例外を取り除きます。 –

+0

[winformsの.rdlcデータレポートの外部画像]の複製が可能です(http://stackoverflow.com/questions/2070408/external-images-in-rdlc-data-reports-for-winforms) –

答えて

0

としては、あなたがコードを使用して外部の画像を有効にしたとき、私は経験を持っている、画像のパスがURL形式である必要があり、hereを述べすなわち@"file:///C:\logo.jpg"

それとも

var filepath = new Uri("C:\logo.jpg"); 
var path = new ReportParameter("Path", filepath.AbsolutePath); 
this.reportViewer1.LocalReport.SetParameters(new ReportParameter {Path = path}); 
4

を試すことができますローカル/開発環境で動作しますが、サーバーにデプロイメントしても動作しないため、エラーが発生します。

は、この問題を解決するASPXでEnableExternalImages="true"プロパティを使用するか、レポートビューアーコントロールを使用していて、それが完璧に動作するデザインファイルにするために

を「外部の画像を可能にするプロパティは、このレポートのために設定されていません」。

1

実際に問題があるのは、this.reportViewer1.RefreshReport();に電話をかけてからthis.reportViewer1.LocalReport.EnableExternalImages = true;に設定することです。

ここでの順序は重要です。

関連する問題