【问题标题】:How to dynamically load image into picturebox in fast report?如何在快速报告中将图像动态加载到图片框中?
【发布时间】:2018-06-05 14:41:45
【问题描述】:

我在 Sql 中有一个表,其中有 2 列,其中包含与该标题相关的图像的标题和地址,如下所示: 头地址

194003      ~/viewerImages/1903-01-1-5-0-6-00143.jpg
194003      ~/viewerImages/1903-01-1-5-0-6-00161.jpg
194003      ~/viewerImages/1903-01-1-5-0-6-00190.jpg
194012      ~/viewerImages/1903-01-1-5-0-6-00143.jpg
194012      ~/viewerImages/1903-01-1-5-0-7-00141.jpg
194012      ~/viewerImages/1903-01-1-5-0-7-00160.jpg
194015      ~/viewerImages/1903-01-1-5-0-7-00180.jpg
194015      ~/viewerImages/1903-01-1-5-0-8-00159.jpg
194015      ~/viewerImages/1903-01-1-5-0-8-00184.jpg

我想在 fastreport 中为每个标题动态加载这些图像。 我该怎么办?

【问题讨论】:

    标签: fastreport


    【解决方案1】:

    一种解决方案是创建一个具有一些属性的对象,这些属性是要加载的图像(image1、image2、image3)。您还可以使用要在报告中打印的数据添加更多属性。 然后,您可以动态加载对象中的信息,并将对象发送到报表后,快速报表将打印您正在对象中加载的信息。通过这种方式,您可以随心所欲地做任何您想做的事情。 对于图像属性,可以使用 Image 或 byte[] 类型。

    要创建报告:

    var report = new Report();
    report.Load(Constants.Paths.ReportFolder + "Return.frx");
    
    report.RegisterData(myObject, "Name");
    report.Design(); // if you want to open the designer before to print
    report.Show();
    

    注意:要注册的对象必须是对象的集合。在这种情况下,myObject 将是一个列表。如果要注册单个对象,可以这样:

    report.RegisterData(new List{ myObject }), "Name");

    在设计器中,您可以访问所有属性。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-07-27
      • 2017-03-23
      • 1970-01-01
      • 1970-01-01
      • 2013-03-21
      • 2011-01-10
      • 2023-04-08
      相关资源
      最近更新 更多