以编程方式添加时,XtraReport中未显示水印

问题描述

我有一个功能可以帮助我使用DevExpress( v17.2 )中的XtraReport创建报告。这些报告是根据客户端发送的其他一些数据以编程方式创建的,因此对于我的应用程序支持的每种情况,我都有几个模板。

我的功能是正确创建和填充报告模板,因此我可以在客户端中显示文档,但是我需要有条件地添加一些水印。

我将水印添加到其中一个报告中,并且效果很好,但是由于我更喜欢​​其中的许多水印,并且出于维护的原因可能更方便地将其添加到全局中,因此我这样做:

Default.aspx.cs

void Page_Load()
{
    AspxDocumentViewer docViewer;
    ...

    docViewer.Report = GetSpecificReport(...);
   
    // Here I try to add the watermark via some other function
    SetWaterMark(docViewer.Report,someImageIRetrieve);

    // When I debug the code after setting the watermark it shows what I've set.
}

private void SetWatermark(XtraReport report,System.Drawing.Image watermarkImage)
{
    var waterMark = new XRWatermark();
    waterMark.Image = watermarkImage;
    waterMark.ImageTiling = true;
    waterMark.ImageTransparency = 200;
    waterMark.ShowBehind = false;
   
    report.Watermark.CopyFrom(waterMark);
}

我对代码进行了总结,如果需要其他信息来扩展上下文,请告诉我,我将更新问题。预先感谢。

解决方法

如果您使用的是ASPxDocumentViewer,那么请尝试使用现代的html5查看器ASPxWebDocumentViewer,以便您看到水印

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...