You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在C# WinForm应用中使用程序参数创建无数据库依赖的RDLC报表

无数据库绑定RDLC报表表格实现方案(C# WinForms 环境)

步骤1:定义自定义数据实体类

先创建一个普通C#类,属性和你报表表格的列一一对应即可,示例如下:

public class ReportItem
{
    // 属性名和后续报表数据集列名保持一致即可
    public int SerialNumber { get; set; }
    public string Content { get; set; }
    public decimal Amount { get; set; }
    public string Remark { get; set; }
}

步骤2:RDLC报表端配置数据集与表格

  • 打开RDLC报表设计界面,在【报表数据】面板右键点击【数据集】→【添加数据集】
  • 数据源类型选择对象,在列表里找到你刚才创建的ReportItem类,确认后即可生成对应字段的数据集,全程不需要连接数据库
  • 从工具箱拖入【表】控件到报表画布,绑定刚创建的数据集,将对应字段拖到表格列中完成表格设计

步骤3:代码侧传递数据填充报表

在嵌入ReportViewer控件的窗体逻辑中,构造数据列表绑定到报表即可,示例代码:

private void ReportForm_Load(object sender, EventArgs e)
{
    // 自行构造报表数据,完全不需要读取数据库
    List<ReportItem> reportData = new List<ReportItem>
    {
        new ReportItem{ SerialNumber = 1, Content = "测试项1", Amount = 100.5m, Remark = "正常"},
        new ReportItem{ SerialNumber = 2, Content = "测试项2", Amount = 200.0m, Remark = "正常"},
        new ReportItem{ SerialNumber = 3, Content = "测试项3", Amount = 50.8m, Remark = "待确认"}
    };

    // 第一个参数必须和RDLC中定义的数据集名称完全一致
    ReportDataSource dataSource = new ReportDataSource("CustomReportDataSet", reportData);
    
    reportViewer1.LocalReport.ReportPath = @"你的RDLC文件本地存储路径";
    reportViewer1.LocalReport.DataSources.Clear();
    reportViewer1.LocalReport.DataSources.Add(dataSource);
    
    // 若需要传递单值参数(比如报表标题、统计日期),可调用以下方法
    // reportViewer1.LocalReport.SetParameters(new ReportParameter("ReportTitle", "测试报表"));

    reportViewer1.RefreshReport();
}

注意:如果报表设计界面找不到【报表数据】面板,可在打开RDLC文件的状态下,使用快捷键Ctrl+Alt+D调出来。

内容的提问来源于stack exchange,提问作者Adnan abid

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 17:18:00