• ReportView报表的使用


    今天刚接触报表,花了好久时间,走了很多弯路,感觉应该写出来和大家分享下,前车之鉴。

    首先创建项目,添加新建项目—数据—数据集,在工具箱中拖入DataTable控件,右击控件添加列,设置列名

    添加新建项目—Reporting—报表,得到.relc结尾的文件,在右侧报表数据里,右击数据集—添加数据集

    右击—插入表(默认为2行3列的表),修改名的hander为编号、姓名、年龄,在第二列点击选择相对应的数据集里的数据

    *需要注意将Report1.rdlc文件的生成操作属性改为内容

    接下来新建一个类,写入代码

    public class Person
        {
            public int ID { get; set; }
            public string Name { get; set; }
            public int Age { get; set; }
        }

    接着新建web窗体,在窗体里写入三个控件:ReportView、button控件和ScriptManager(没什么用,但没有这个控件,会报错)

    <div>
    <asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
    <rsweb:ReportViewer ID="ReportViewer1" runat="server" Height="386px" Width="619px"></rsweb:ReportViewer>
    <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="确定" />
    </div>

    之后给button控件的点击时间写入代码:

     1 protected void Button1_Click(object sender, EventArgs e)
     2 {
     3 /*先清空原来数据集*/
     4 ReportViewer1.LocalReport.DataSources.Clear();
     5 /*设置报表文件*/
     6 ReportViewer1.LocalReport.ReportPath = @"D:	askExercise1LearnReport1.rdlc";
     7 /*数据集的填充*/
     8 ReportDataSource rds = new ReportDataSource("DataSet1", loadData());
     9 /*将数据集添加到本地报表*/
    10 ReportViewer1.LocalReport.DataSources.Add(rds);
    11 /*刷新报表显示*/
    12 ReportViewer1.LocalReport.Refresh();
    13 }

    注意第6行的地址一定不能写错,否则会报错

    最后写入l对象包含的数据loadData

    1 private List<Person> loadData()
    2 {
    3      List<Person> per = new List<Person>();
    4      for (int i = 0; i < 5; i++)
    5      {
    6          per.Add(new Person() { ID = i + 1, Name = "name", Age = i + 18 });
    7      }
    8      return per;
    9 }

    启动程序,完成!

  • 相关阅读:
    C# API 大全
    也说_T、_TEXT、TEXT、L
    项脊轩志--归有光
    C# tostring()汇总
    StructLayout特性
    关于C#静态构造函数的几点说明
    C#生成DLL文件
    做.net的早晚会用到,并且网上还没有这方面的正确资料或几乎很少
    C# 实现屏幕键盘 (ScreenKeyboard)
    Microsoft .NET Native
  • 原文地址:https://www.cnblogs.com/CurryZhang/p/4763478.html
Copyright © 2020-2023  润新知