测试使用的FastReport Studio 版本为4.6.80

先引用FastReport.dll

然后把C:/Program Files/FastReports/FastReport Studio Trial/Examples/VisualC#.NET/DataSetDemo目录下的

FrxDataSet.cs

FrxDataTable.cs

FrxDataTable.resx

复制到解决方案中(切记要将这三个文件代码中的命名空间更改为自己程序的命名)

SQLServer数据库,表名demo_test  有三个字段 id(int),name(char),onemorename(char)

FastReport报表demo_test.fr3中有三个memo

[demo_test."id"]        DataField属性 id

[demo_test."name"]        DataField属性 name

[demo_test."onemorename"]        DataField 属性 onemorename

以下是我根据DataSetDemo写的代码,在VS2005中测试通过

view plaincopy to clipboardprint?
using System;  
using System.Collections.Generic;  
using System.ComponentModel;  
using System.Data;  
using System.Drawing;  
using System.Text;  
using System.Windows.Forms;  
using FastReport;  
using System.Data.SqlClient;  
 
namespace FRDemoTest  
{  
    public partial class Form1 : Form  
    {  
        TfrxReportClass report;  
        FrxDataTable datatable;  
        FrxDataSet dataset;  
 
        public Form1()  
        {  
            InitializeComponent();  
        }  
    //为FrxDataTable加载数据  
        private void FillTableWithSampleData(FrxDataTable datatable)  
        {  
            SqlConnection conn = new SqlConnection("server=.;database=DEMO;UID=sa;PWD=");  
            SqlDataAdapter da = new SqlDataAdapter("select * from demo_test", conn);  
            da.Fill(datatable);  
        }  
    //为FrxDataSet加载数据  
        private void FillDataSetWithSampleData(FrxDataSet dataset)  
        {  
            SqlConnection conn = new SqlConnection("server=.;database=DEMO;UID=sa;PWD=");  
            SqlDataAdapter da = new SqlDataAdapter("select top 2 * from demo_test", conn);  
            da.Fill(dataset,"demo_test");//demo_test为表名,对应FastReport模板中Memo的名字[demo_test."id"]  
        }  
    //加载FrxDataTable  
        private void button1_Click(object sender, EventArgs e)  
        {  
            report = new TfrxReportClass();  
            report.ClearDatasets();//加这句可以避免重复打开报表提示错误  
            datatable = new FrxDataTable("demo_test");//demo_test为表名,对应FastReport模板中Memo的名字[demo_test."id"]  
            FillTableWithSampleData(datatable);  
            //report.MainWindowHandle = (int)this.Handle;  
            report.LoadReportFromFile("demo_test.fr3");  
            //report.ClearDatasets();  
            datatable.AssignToReport(true, report);  
            datatable.AssignToDataBand("MasterData1", report);  
            report.ShowReport();  
        }  
    //加载FrxDataSet  
        private void button2_Click(object sender, EventArgs e)  
        {  
            report = new TfrxReportClass();  
            report.ClearDatasets(); //加这句可以避免重复打开报表提示错误  
            dataset = new FrxDataSet();  
            FillDataSetWithSampleData(dataset);  
            report.LoadReportFromFile("demo_test.fr3");  
            dataset.BindToReport(report);  
            dataset.BindTableToBand("demo_test", report, "MasterData1");  
            report.ShowReport();  
        }  
    //加载Dedigner  
        private void button3_Click(object sender, EventArgs e)  
        {  
            report = new TfrxReportClass();  
            report.LoadReportFromFile("demo_test.fr3");  
            report.DesignReport();  
        }  
    }  

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using FastReport;
using System.Data.SqlClient;

namespace FRDemoTest
{
    public partial class Form1 : Form
    {
        TfrxReportClass report;
        FrxDataTable datatable;
        FrxDataSet dataset;

public Form1()
        {
            InitializeComponent();
        }
 //为FrxDataTable加载数据
        private void FillTableWithSampleData(FrxDataTable datatable)
        {
            SqlConnection conn = new SqlConnection("server=.;database=DEMO;UID=sa;PWD=");
            SqlDataAdapter da = new SqlDataAdapter("select * from demo_test", conn);
            da.Fill(datatable);
        }
 //为FrxDataSet加载数据
        private void FillDataSetWithSampleData(FrxDataSet dataset)
        {
            SqlConnection conn = new SqlConnection("server=.;database=DEMO;UID=sa;PWD=");
            SqlDataAdapter da = new SqlDataAdapter("select top 2 * from demo_test", conn);
            da.Fill(dataset,"demo_test");//demo_test为表名,对应FastReport模板中Memo的名字[demo_test."id"]
        }
 //加载FrxDataTable
        private void button1_Click(object sender, EventArgs e)
        {
            report = new TfrxReportClass();
            report.ClearDatasets();//加这句可以避免重复打开报表提示错误
            datatable = new FrxDataTable("demo_test");//demo_test为表名,对应FastReport模板中Memo的名字[demo_test."id"]
            FillTableWithSampleData(datatable);
            //report.MainWindowHandle = (int)this.Handle;
            report.LoadReportFromFile("demo_test.fr3");
            //report.ClearDatasets();
            datatable.AssignToReport(true, report);
            datatable.AssignToDataBand("MasterData1", report);
            report.ShowReport();
        }
 //加载FrxDataSet
        private void button2_Click(object sender, EventArgs e)
        {
            report = new TfrxReportClass();
            report.ClearDatasets(); //加这句可以避免重复打开报表提示错误
            dataset = new FrxDataSet();
            FillDataSetWithSampleData(dataset);
            report.LoadReportFromFile("demo_test.fr3");
            dataset.BindToReport(report);
            dataset.BindTableToBand("demo_test", report, "MasterData1");
            report.ShowReport();
        }
 //加载Dedigner
        private void button3_Click(object sender, EventArgs e)
        {
            report = new TfrxReportClass();
            report.LoadReportFromFile("demo_test.fr3");
            report.DesignReport();
        }
    }
}

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/vwfkyy/archive/2009/10/27/4734688.aspx

FastReport studio 动态加载数据集 (zhuan)相关推荐

  1. Delphi FastReport动态加载图片

    Delphi  FastReport动态加载图片 2011-01-06         作者:李海彬 阅读:684 以前用FastReport制作报表,从来没有打印过图片,这段时间做了个打印个人简历的 ...

  2. Flex LineChart曲线——动态加载组件

    最近在学习Flex 和Asp.net互操作,在网上查找了一些资料,综合后, 做出了这个动态加载组件的LineChart曲线.尚有不足之处请予以指正:谢谢. 下面是完整代码: 代码 1 <?xml ...

  3. Android动态加载进阶 代理Activity模式

    基本信息 作者:kaedea 项目:android-dynamical-loading 技术背景 简单模式中,使用ClassLoader加载外部的Dex或Apk文件,可以加载一些本地APP不存在的类, ...

  4. Android动态加载技术

    基本信息 Author:kaedea GitHub:android-dynamical-loading 我们很早开始就在Android项目中采用了动态加载技术,主要目的是为了达到让用户不用重新安装AP ...

  5. Android动态加载插件APK

    问题起因 我曾经在开发Android Application的过程中遇到过那个有名的65k方法数的问题.如果你开发的应用程序变得非常庞大,你八成会遇到这个问题. 这个问题实际上体现为两个方面: 一.6 ...

  6. Android插件化开发之动态加载技术简单易懂的介绍方式

    转载地方:https://segmentfault.com/a/1190000004062866 基本信息 Author:kaedea GitHub:android-dynamical-loading ...

  7. C#.Net 如何动态加载与卸载程序集(.dll或者.exe)0-------通过应用程序域AppDomain加载和卸载程序集...

    本博客中以"C#.Net 如何动态加载与卸载程序集(.dll或者.exe)"开头的都是引用莫问奴归处 微软装配车的大门似乎只为货物装载敞开大门,却将卸载工人拒之门外.车门的钥匙只有 ...

  8. Android学习——Fragment动态加载

    动态加载原理 利用FragmentManager来添加一套Fragment事务,最后通过commit提交该事务来执行对Fragment的相关操作. FragmentManager fragmentma ...

  9. H5仿抖音上下切换翻页动态加载效果

    只有五个页面实现动态加载翻页效果,网上查到都是用Swiper 不停的插入元素,导致页面内容越来越多致卡顿.这里就只用五个页面来轮翻显示,实现无限加载的效果. <!DOCTYPE html> ...

最新文章

  1. 将文件名和文件修改时间批量输出至Excel中
  2. php类使用场景,php类与对象得使用场景
  3. [HNOI2013]切糕
  4. 如何跟项目经理和开发人员反馈安全测试报告的问题
  5. SQL Server中查询所有的表、视图、列和存储过程
  6. 主要垃圾回收器和垃圾回收算法
  7. gis计算各省河流长度_用河流和各方解释安全漏洞
  8. 去哪儿-22-async-components
  9. 低代码,是否能“取代”开发者?
  10. 稀疏贴图 SparseTexture
  11. ceentos5.5 配置samba服务用户组
  12. linux 清tcp缓存 命令_漫画 | 一台Linux服务器最多能支撑多少个TCP连接?
  13. 打印机用word打文档时在背面打印
  14. matlab箭头梯度方向场,局部路径规划算法——人工势场法
  15. 电子书格式转换 azw3 to epub (软件calibre的简单使用)
  16. 小图标下载、gif设计、图片压缩、代码优化
  17. 【转】地址线和数据线的计算
  18. Android蓝牙开发与串口蓝牙通讯
  19. openwrt编译教程(第一章)
  20. linux 查看java版本

热门文章

  1. DinnerNow中的Work Flow应用(下) --- 订单流程
  2. [转]博士的学习经验!读后,令人茅塞顿开的科研经典之作
  3. [小改进]给链接增加了描述属性
  4. 读书:鲁迅的《呐喊》和《彷徨》
  5. 数据安全治理面临哪些挑战
  6. 大数据分析的四大趋势有哪些
  7. 大数据给企业带来的好处有哪些
  8. 报错ValueError: check_hostname requires server_hostname
  9. 用Eclipse创建一个spring boot(创建,并配好controller)
  10. 静态文件之static+url控制系统(萌新笔记)