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!

转载于:https://www.cnblogs.com/fish124423/archive/2012/06/20/2556394.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值