ReportViewer 数据源更新

本文介绍如何使用微软的ReportViewer组件更新报表数据。通过修改数据源并调用RefreshReport方法即可实现实时报表更新。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

微软的ReportViewer过去的项目使用它来实现多张票据打印,查看发现:

RefreshReport函数MSDN中的备注

调用 RefreshReport 方法会导致重新加载和呈现报表中的所有数据

以前没有注意到他的实际效果。假如我想更改数据里面的值需要重新

 

...

  reportViewer1.LocalReport.DataSources.Clear();

reportViewer1.LocalReport.DataSources.Add());

...

 

现在经过测试确认不需要:

执行RefreshReport的时候Report重新读取数据源。只需更改原先数据源的数据即可。

 

例如:

...

private List<Product> m_products = new List<Product>();

private void Form1_Load(object sender, EventArgs e)
{
m_products.Add(new Product("Pen", 25));
m_products.Add(new Product("Pencil", 30));
m_products.Add(new Product("Notebook", 15));

reportViewer1.LocalReport.DataSources.Add(new ReportDataSource("Product", m_products));

this.reportViewer1.RefreshReport();
}

private void button1_Click(object sender, EventArgs e)
{
Product model = m_products[1];
model.Price = 34222;

  this.reportViewer1.RefreshReport();  //执行后报表的数据就改变了。
}

 

...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值