2014-11-24 10 views
0

如何在某些條件下(基於傳遞的參數)以編程方式向我的RDLC報表添加水印?對於報告正文如何在某些條件下以編程方式向我的RDLC報表添加水印?


 overTimeReport.ReportPath = "Report\\OverTime.rdlc"; 

     overTimeReport.DataSources.Clear(); 
     overTimeReport.Refresh(); 

     //---- Generate parameter list---- 
     List<ReportParameter> paramList = new List<ReportParameter>(); 
     ReportParameter param1 = new ReportParameter("check_state", check_state); 
     paramList.Add(param1); 
     overTimeReport.SetParameters(paramList); 
     ReportDataSource datasource = new ReportDataSource(); 
     datasource = new ReportDataSource("DSOverTime", dt); 

回答

1

設置背景圖片到你的水印圖片參數:根據你的「條件」

=Parameters!watermark.Value 

設置你的條件水印參數(我假設你的病情要麼顯示水印或不):

ReportParameter watermarkParameter = new ReportParameter("watermark", "", false); 
if (showWatermark) 
    watermarkParameter = new ReportParameter("watermark", Uri(watermarkPath).ToString(), false); 

不要忘記將你的水印參數添加到參數列表和e報告中的外部圖像:

paramList.Add(watermarkParameter); 

overTimeReport.EnableExternalImages = true; 
+0

我嘗試了上述解決方案,但是在呈現PDF時圖像不顯示給我。 – 2014-11-25 16:51:16

+0

你有任何錯誤信息嗎?檢查你的輸出窗口...上面的代碼在各種報告中適用於我。 – InitK 2014-11-25 17:20:51

+0

沒有錯誤只是水印不會出現在呈現PDF。 (ReportParameter watermarkParameter = new ReportParameter(「watermark」,new Uri(@「Reports \ draft.jpg」,UriKind.Relative).ToString()); paramList.Add(watermarkParameter); overTimeReport.EnableExternalImages = true;' – 2014-11-26 07:03:09

相關問題