📜  用于显示今天日期的 rdlc 报告功能 (1)

📅  最后修改于: 2023-12-03 15:27:11.331000             🧑  作者: Mango

用于显示今天日期的 rdlc 报告功能

在开发报表时,显示当前日期是非常常见的需求。RDLC 报告提供了显示系统当前日期的功能,只需要进行简单的配置即可实现。

配置 RDLC 报表

首先,我们需要在 RDLC 报表中添加一个 Textbox 控件用于显示当前日期。右键 Textbox 控件,选择“表达式”。

在表达式编辑器中,我们可以使用 Today 函数获取当前日期。Today 函数返回系统本地时间(DateTime),不包含时间部分。可以使用 Format 函数将日期格式化为自己需要的样式。

例如,以下表达式将当前日期转换为“yyyy-MM-dd”格式:

=Format(Today(), "yyyy-MM-dd")
将 RDLC 报表集成到应用程序中

将已经配置好的 RDLC 报表集成到应用程序中需要进行以下几个步骤:

  1. 创建 ReportViewer 控件并设置数据源

  2. 加载 RDLC 报表文件

  3. 设置 ReportViewer 的属性

在示例代码中,我们创建了一个名为 ReportViewer 的控件,将其数据源设置为 null。加载名为 TodayReport.rdlc 的 RDLC 报表文件,并将 ReportViewer 的属性设置为 LocalReport,其中 ReportPath 属性设置为 TodayReport.rdlc 文件的路径。

<ReportViewer
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Name="ReportViewer"
    Width="800"
    Height="600"
    Margin="5"
    HorizontalAlignment="Stretch"
    VerticalAlignment="Stretch"
    VerticalContentAlignment="Stretch"
    HorizontalContentAlignment="Stretch"
    ZoomMode="PageWidth"
    BackColor="WhiteSmoke"
    ForeColor="Gray"
    BorderBrush="DarkGray"
    BorderThickness="1"
    Padding="0"
    FontSize="14"
    FontFamily="Calibri" />
显示报表

最后一步是在代码中显示报表。我们获取 ReportViewer 的 LocalReport 对象,并为 Today 的值创建 ReportParameter 对象。将 ReportParameter 对象添加到 LocalReport 的集合中,并将 ReportViewer 的 Refresh() 方法调用。

以下是在 Windows 窗体应用程序中显示报表的示例代码:

private void Form1_Load(object sender, EventArgs e)
{
    ReportViewer.ProcessingMode = ProcessingMode.Local;
    ReportViewer.LocalReport.ReportEmbeddedResource = "TodayReport.rdlc";

    var today = DateTime.Today.ToString("yyyy-MM-dd");
    var parameter = new ReportParameter("Today", today);
    ReportViewer.LocalReport.SetParameters(parameter);
    
    ReportViewer.RefreshReport();
}

以上是用于显示今天日期的 RDLC 报告功能的介绍。通过简单的配置和集成,我们可以在 RDLC 报表中显示当前日期。