c# fastreport pf打印

<Window x:Class="WndSet"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        mc:Ignorable="d"
        Title="" Height="800" Width="1200" WindowStartupLocation="CenterScreen">
    <Grid>
        <WindowsFormsHost Name="formHost" Margin="30,20,30,20"/>
    </Grid>
</Window>

public partial class WndSet : Window
{
  private DesignerControl dc = new DesignerControl();
  public WndSet(Report r)
  {
    InitializeComponent();
    this.formHost.Child = dc;
    dc.Report = r;
  }
}

编辑界面选中控件或标题区可以添加事件,编写脚本。左下角可以切换脚本和图形界面。

     

      

3.图片传输

FastReport.Report report = new FastReport.Report();

            report.PrintSettings.Printer = Printer;

            report.Load("ReportFile\\3.图片传输.frx");

            //直接传图

            Image image = Image.FromFile("test.jpg");

            FastReport.PictureObject imgobj = report.FindObject("Picture1") as FastReport.PictureObject;

            imgobj.Width = 120;

            imgobj.Height = 120;

            imgobj.Image = image;

            //DateSet传图

            byte[] img = ImageToByte(image);

            DataSet dt = new DataSet();

            DataTable tb = new DataTable();

            tb.TableName = "图片表";

            tb.Columns.Add(new DataColumn("图片1", Type.GetType("System.Byte[]")));

            DataRow dr = tb.NewRow();

            dr["图片1"] = img;

            tb.Rows.Add(dr);

            dt.Tables.Add(tb);

            report.RegisterData(dt, "Data");

            report.Show();

=================

打开窗口的代码编辑器(右键单击表单 - ViewCode)。

添加FastReport库:

using FastReport;

在这个类中,我们创建一个DesignerControl对象的实例并将其分配给WindowsFormsHost1:

public partial class Designer : Window
 {
 FastReport.Design.StandardDesigner.DesignerControl designer = new FastReport.Design.StandardDesigner.DesignerControl();
 Report report1 = new Report();
 
 public Designer()
 {
 InitializeComponent();
 designer.Report = report1;
 designer.RefreshLayout();
 WindowsFormsHost1.Child = designer;
 }
 }
}

因为设计器应该显示报表,即使它是空的,我们还要创建一个报表对象的实例,并将其加载到设计器中。然后我们更新设计器并将设计器对象分配给我们的host。

分类: c#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值