zoukankan      html  css  js  c++  java
  • (转载)Devexpress XtraReports 系列 2 创建表格报表

    今天的主题是创建表格报表。

    首先我们来看看最后实现的效果。Demo最后附上。

    QQ截图20130827164931

    接下来开始讲解如何一步一步做出这个报表:

    第一步,创建如上窗体,拉入控件SimpleButton,DocumentViewer,SplitContainerControl,LabelControl,TextEdit,GroupControl,简单布局我就不多说了,跟上篇一样的布局 ,详见:http://www.cnblogs.com/lhmlyx2723356/p/3286101.html

    第二步,创建一个报表文件。如图:

    QQ截图20130827165321

            在报表中拉入两个XRTable控件,在ReportHeader放置一个,并修改其Text属性如上图,姓名,密码,创建时间,备注。

    在Detail区放置一个XRTable。至于对齐,字体修改,相信大家也都能找到相对应的属性去修改。

    这里要讲一下报表的隔行换色的属性设置,如图:

    选中Detail中的XRTable后,在属性窗口中根据需要设置BackColor属性。

    QQ截图20130827165734

     

    第三步,我们利用数据库做一张简单的表并输入一些测试值。如图:

    QQ截图20130827170140 

    第四步,数据库表,布局都做好了,接下来我们就来处理相对应的事件了。输入文本框的值,点击按钮把查询出来的数据源绑定到报表中

    a,修改报表文件的构造函数,让它在实例化的时候可以接收数据源。

    public TableRpt(DataSet ds)//修改构造函数 
    { 
        InitializeComponent(); 
        this.DataSource = ds; 
        this.xrTableCell5.DataBindings.Add("Text", ds, "name");//为单元格绑定数据源中相对应的字段 
        this.xrTableCell6.DataBindings.Add("Text", ds, "password"); 
        this.xrTableCell8.DataBindings.Add("Text", ds, "createdate"); 
        this.xrTableCell7.DataBindings.Add("Text", ds, "remark"); 
    }

    b,获取数据源

    private DataSet BindRpt() 
         { 
             DataSet ds = new DataSet(); 
             try 
             { 
                 SqlConnection con = new SqlConnection("Data Source=(local);Integrated Security=SSPI;Initial Catalog=ReportDeom"); 
                 SqlDataAdapter adapter; 
                 con.Open(); 
                 SqlCommand cmd = new SqlCommand("SELECT * FROM TableRptData where name=@name OR @name='' ", con); 
                 SqlParameter[] paras = new SqlParameter[]{ 
                     new SqlParameter("@name",txtName.Text.Trim()) 
                 }; 
                 cmd.Parameters.AddRange(paras); 
                 adapter = new SqlDataAdapter(cmd); 
                 adapter.Fill(ds, "TableRpt"); ; 
                 con.Close(); 
             } 
             catch (Exception ex) 
             { 
                 throw ex; 
             } 
             return ds; 
         }

     

    c,单击按钮,绑定数据到报表中

    private void btnShowReport_Click(object sender, EventArgs e) 
      { 
          DataSet ds = BindRpt(); 
          TableRpt Rpt = new TableRpt(ds); 
          this.documentViewer1.DocumentSource = Rpt; 
          Rpt.CreateDocument(); 
      }

     

    到此,报表就表格报表就完成了。

    希望对初学者有点帮助。谢谢

  • 相关阅读:
    java 模拟http请求,通过流(stream)的方式,发送json数据和文件
    $listeners 在vue中的使用 --初学
    vue中关于checkbox数据绑定v-model指令说明
    Vue--理解非prop特性
    Vue里标签嵌套限制问题解决------解析DOM模板时注意事项:
    vue click.stop
    @click.prevent.self和@click.self.prevent区别
    assign()-JS
    摘抄大神对VUE 中slot-scope的深度理解
    oracle11G备份空表解决办法
  • 原文地址:https://www.cnblogs.com/liujicai/p/3286585.html
Copyright © 2011-2022 走看看