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 FastReport.Data;
using FastReport.Editor;
using FastReport.Design;
using FastReport.Data.ConnectionEditors;
using FastReport.Forms;
using FastReport.Utils;
using FastReport.Table;
using System.Data.SqlClient; namespace DataFromArray
{
/// <summary>
///
/// </summary>
public partial class Form1 : Form
{ private int[] FArray; TableObject Table1 = new TableObject();
Report report = new Report();
/// <summary>
///
/// </summary>
/// <returns></returns>
DataSet bindDB()
{
DataSet ds = new DataSet();
DataTable dt = new DataTable();
dt.TableName = "Db";
dt.Columns.Add("id", typeof(int));
dt.Columns.Add("cnname", typeof(string));
dt.Columns.Add("bithdate", typeof(DateTime));
dt.Columns.Add("age", typeof(int)); dt.Rows.Add(1, "geovindu", "2001-12-03",12);
dt.Rows.Add(2, "sibodu", "2001-12-03",13);
dt.Rows.Add(3, "ginhongzhao", "2001-12-03",15);
ds.Tables.Add(dt);
return ds;
} /// <summary>
///
/// </summary>
public Form1()
{
InitializeComponent();
Table1.ManualBuild += new System.EventHandler(Table1_ManualBuild);
CreateArray();
}
/// <summary>
///
/// </summary>
private void CreateArray()
{
FArray = new int[10];
for (int i = 0; i < 10; i++)
{
FArray[i] = i + 1;
}
}
/// <summary>
///
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnCreateNew_Click(object sender, EventArgs e)
{
// create report instance
Report report = new Report(); // register the array
report.RegisterData(FArray, "Array"); // design the report
report.Design(); // free resources used by report
report.Dispose();
}
/// <summary>
///
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnRunExisting_Click(object sender, EventArgs e)
{
// create report instance
Report report = new Report(); string fileurl = @"..\..\report.frx";
// load the existing report
report.Load(fileurl); // register the array
//report.RegisterData(FArray, "Array");
report.RegisterData(FArray, "Db"); // run the report
report.Show(); // free resources used by report
report.Dispose();
} private void Form1_Load(object sender, EventArgs e)
{ }
/// <summary>
///
/// 自定义
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button1_Click(object sender, EventArgs e)
{
try
{ //DataTable dd = bindDB().Tables["Db"];
report.RegisterData(bindDB().Tables["Db"], "Db");
report.GetDataSource("Db").Enabled = true; ReportPage page1 = new ReportPage();
page1.Name = "page1";
report.Pages.Add(page1); page1.ReportTitle = new ReportTitleBand();
page1.ReportTitle.Name = "ReportTitle1";
page1.ReportTitle.Height = Units.Centimeters*1.5f; ReportPage page2 = new ReportPage();
page2.Name = "page2";
page2.ReportTitle = new ReportTitleBand();
page2.ReportTitle.Name = "ReportTitle2";
page2.ReportTitle.Height = Units.Centimeters * 1.5f;
report.Pages.Add(page2); GroupHeaderBand group1 = new GroupHeaderBand();
group1.Height = Units.Centimeters * 1;
group1.Name = "GroupHeader1";
group1.Condition = "[Db.cnname]"; //表.字段名
page1.Bands.Add(group1); group1.GroupFooter = new GroupFooterBand();
group1.GroupFooter.Name = "GroupFooter1";
group1.GroupFooter.Height = Units.Centimeters * 1; //create databand
DataBand data1 = new DataBand();
data1.Name = "Data1";
data1.Height = Units.Centimeters * 0.5f;
data1.DataSource = report.GetDataSource("Db");
group1.Data = data1; //
TextObject txt1 = new TextObject();
txt1.Name = "txt1";
txt1.Bounds = new RectangleF(0, 0, Units.Centimeters * 19, Units.Centimeters * 1);
txt1.HorzAlign = HorzAlign.Center;
txt1.Font = new Font("宋体", 14, FontStyle.Bold);
txt1.Text = "DB 数据";
page1.ReportTitle.Objects.Add(txt1); //group
TextObject txt2 = new TextObject();
txt2.Name = "txt2";
txt2.Bounds = new RectangleF(0, 0, Units.Centimeters * 2, Units.Centimeters * 1);
txt2.HorzAlign = HorzAlign.Center;
txt2.Font = new Font("宋体", 8, FontStyle.Bold);//Tahoma
txt2.Text = "[Db.cnname]";
group1.Objects.Add(txt2); //data band
TextObject txt3 = new TextObject();
txt3.Name = "txt3";
txt3.Bounds = new RectangleF(0, 0, Units.Centimeters * 2, Units.Centimeters * 1);
txt3.HorzAlign = HorzAlign.Center;
txt3.Font = new Font("宋体", 8, FontStyle.Bold);
txt3.Text = "[Db.cnname]";
data1.Objects.Add(txt3);
TextObject txt4 = new TextObject();
txt4.Name = "txt4";
txt4.Bounds = new RectangleF(0, 0, Units.Centimeters * 2, Units.Centimeters * 1);
txt4.HorzAlign = HorzAlign.Center;
txt4.Font = new Font("宋体", 8, FontStyle.Bold);
txt4.Text = "[Db.age]";
group1.GroupFooter.Objects.Add(txt4); DataSourceBase masterData = report.GetDataSource("Db");
masterData.Init(); //TableColumn cm = new TableColumn();
//cm.Name = "";
//TableColumn column = new TableColumn();
//column.Name = "column";
//column.Bounds = new RectangleF(0, 0, Units.Centimeters * 2, Units.Centimeters * 1);
//column.Height = Units.Centimeters * 2.5f;
//Table1.Columns.Add(column); //TableColumn column2 = new TableColumn();
//column2.Name = "Cell2"; //column2.Bounds = new RectangleF(0, 0, Units.Centimeters * 2, Units.Centimeters * 1);
//column2.Height = Units.Centimeters * 2.5f;
//Table1.Columns.Add(column2); //Table1.Border.RightLine = BorderLines.Right;
Table1.ColumnCount = 2;
Table1.Border.LeftLine.Color = Color.Black; Table1.Border.Lines = BorderLines.None;
Table1.Border.TopLine.Color = Color.Black;
Table1.Border.TopLine.Width = 1; Table1.Border.ShadowWidth = 4;
Table1.Border.RightLine.Style = FastReport.LineStyle.Solid;// TableCell cell = new TableCell();
cell.Name = "Cell1";
cell.Text = "Name";
cell.Font = new Font("宋体", 8, FontStyle.Bold);
cell.Bounds = new RectangleF(0, 0, Units.Centimeters * 2, Units.Centimeters * 1);
cell.Height = Units.Centimeters * 2.5f;
Table1.Columns.Add(cell); TableCell cell2 = new TableCell();
cell2.Name = "Cell2";
cell2.Text = "Id";
cell2.Font = new Font("宋体", 8, FontStyle.Bold);
cell2.Bounds = new RectangleF(0, 0, Units.Centimeters * 2, Units.Centimeters * 1);
cell2.Height = Units.Centimeters * 2.5f;
Table1.Columns.Add(cell2); TableCell cell3 = new TableCell();
cell3.Name = "cell3";
cell3.Text = "[Db.cnname]";
cell3.Font = new Font("宋体", 8, FontStyle.Bold);
cell3.Bounds = new RectangleF(0, 0, Units.Centimeters * 2, Units.Centimeters * 1);
cell3.Height = Units.Centimeters * 2.5f;
Table1.Rows.Add(cell3); TableCell cell4 = new TableCell();
cell4.Name = "cell4";
cell4.Text = "[Db.id]";
cell4.Font = new Font("宋体", 8, FontStyle.Bold);
cell4.Bounds = new RectangleF(0, 0, Units.Centimeters * 2, Units.Centimeters * 1);
cell4.Height = Units.Centimeters * 2.5f;
Table1.Rows.Add(cell4); //TableRow rw = new TableRow(); //while (masterData.HasMoreRows)
//{
// TableCell cell = new TableCell();
// cell.Name = "Cell1";
// cell.Text = "[Db.cnname]";
// cell.Font = new Font("宋体", 8, FontStyle.Bold);
// cell.Bounds = new RectangleF(0, 0, Units.Centimeters * 2, Units.Centimeters * 1);
// cell.Height = Units.Centimeters * 2.5f;
// Table1.Rows.Add(cell); // masterData.Next();
//} //page2.Bands.Add(Table1);
page2.ChildObjects.Add(Table1); report.Show(); }
catch(Exception ex)
{
ex.Message.ToString();
} }
/// <summary>
///
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void Table1_ManualBuild(object sender, EventArgs e)
{ DataSourceBase data1 = report.GetDataSource("Db"); // 获取DataSet中表名为Table1的数据源
data1.Init(); // 初始化
Table1.PrintRow(0); // 控件Table1打印第0行
Table1.PrintColumns(); // 每打印一行,都要调用 PrintColumn或PrintColumns
while (data1.HasMoreRows) // 打印重复循环的行
{
Table1.PrintRow(1);
Table1.PrintColumns();
data1.Next(); // 读取下一行
}
}
/// <summary>
///
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button2_Click(object sender, EventArgs e)
{
Report report = new Report(); string sql = "select top 2 * from Employee";
DataTable dt = null; dt = DBHelper.GetTable(sql, CommandType.Text, null); string fileurl = @"..\..\report2.frx";
// load the existing report
report.Load(fileurl);
// report.Design();
report.RegisterData(dt, "Employee"); // run the report
report.Show(); // free resources used by report
//report.Dispose();
} }
}

  

最新文章

  1. TSQL order by 子句中排序列的多种写法
  2. 实现台式机redhat6.4无线网卡上网RTL8188CUS
  3. BCG界面库下的Windows8 UI界面样式www.webui8.com
  4. sencha touch pull-refresh-panel 面板下拉刷新
  5. TI IPNC Web网页之流程分析
  6. MII、RMII、GMII接口的详细介绍
  7. hdoj 5112 A Curious Matt
  8. WCF创建到使用到发布
  9. php基本框架
  10. 得到一个div下 特定ID的所有标签
  11. Day1-python理论基础
  12. Java基础知识二次学习--第六章 常用类
  13. EF 事务(转载)
  14. 初窥async,await
  15. 通过类名或者jar名查询所在jar包
  16. Day5-----------------------系统监控
  17. linux文本编码格式转化 字幕处理
  18. Postman+Newman+Jenkins 详细教程
  19. [转]Dotfuscator 使用图解教程
  20. _T(&quot;D:\\122.txt&quot;)【字符集问题】或【类型转换问题】

热门文章

  1. 如何封装使用api形式调用的vue组件
  2. NLP文本相似度
  3. 8-unittest中case管理
  4. HDFS JAVA客户端的权限错误:Permission denied
  5. gitlab导入现在git项目
  6. python jieba库的基本使用
  7. Python编程练习:使用 turtle 库完成叠边形的绘制
  8. 利用python完成大学刷课(从0到完成的思路)
  9. 为什么要学习 Spring Boot?
  10. Redis的使用及参考代码