zoukankan      html  css  js  c++  java
  • ReportViewer 动态绑定

    我们常常用reportViewer来做一些报表,直接连数据源的不讲了,google上有,这里是动态绑定一些字段和数据源,
    添加


    这两个dll,工具箱会直接有这个组件

    拖拽一个

    form的代码

     public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
    
            private void Form1_Load(object sender, EventArgs e)
            {
    
    
                this.reportViewer1.ProcessingMode = ProcessingMode.Local;
                this.reportViewer1.LocalReport.ReportPath = "TestReport.rdlc";
                this.reportViewer1.LocalReport.EnableExternalImages = true;
    
               List<ReportParameter> para = new List<ReportParameter>();
                //这里是添加两个字段
               para.Add(new ReportParameter("FishName", "fishkel"));
               para.Add(new ReportParameter("FishId", "123"));
                //这里是添加两个数据源,两个list
               var list = new List<TestReport> { };
               list.Add(new TestReport() { a = "20100201", b = 0.1, c = 0.2, d = 0.1 });
               list.Add(new TestReport() { a = "20100202", b = 0.1, c = 0.2, d = 0.2 });
               list.Add(new TestReport() { a = "20100203", b = 0.1, c = 0.4, d = 0.2 });
                var test = new List<TestReport>() {new TestReport(){ a = "20100201", b = 0.33, c = 0.33, d = 0.33 }};
                this.reportViewer1.LocalReport.DataSources.Add(new ReportDataSource("Test", test));
                this.reportViewer1.LocalReport.DataSources.Add(new ReportDataSource("TestList", list));
                this.reportViewer1.LocalReport.SetParameters(para);
                this.reportViewer1.RefreshReport();
            }
        }
    
        public class TestReport
        {
            public string a { get; set; }
            public double b { get; set; }
            public double c { get; set; }
            public double d { get; set; }
        }
    
    }

    新建一个报表。rdlc类型的,打开报表,拖拽一个图表类型

    因为你没有添加任何数据源,然后它会弹出

    名称你自己起,数据源选择新建,选择对象,然后选择你自己新建的那个类,就是我建的TestReport那个,点击完成

    我添加了两个数据源和两个参数,因为form1中我传来了两个数据源两个参数,这里必须要一一对应,不然会找不到数据,添加完了,

    右键 图表属性。选择一个数据源,然后把字段添加到区域

    拖拽一个文本框控件,右键  表达式

    双击,确定,好了,form中的那个报表            this.reportViewer1.LocalReport.ReportPath = "TestReport.rdlc"; 这个 是要在bin debug有副本的,也就是说你要把报表的  复制到输出路径改成始终复制,然后把form的报表控件右上角的 选择报表 选择一下,运行:

    ok  剩下的自己去摆放吧! goodluck!

  • 相关阅读:
    UVALive 7509 Dome and Steles
    HDU 5884 Sort
    Gym 101194H Great Cells
    HDU 5451 Best Solver
    HDU 5883 The Best Path
    HDU 5875 Function
    卡特兰数
    UVa 11729 Commando War 突击战
    UVa 11292 The Dragon of Loowater 勇者斗恶龙
    Spark Scala Flink版本对应关系
  • 原文地址:https://www.cnblogs.com/fish124423/p/2556394.html
Copyright © 2011-2022 走看看