添加和配置 ReportViewer 控件

通过将 ReportViewer 控件从工具箱的“报表”部分拖动到应用程序中的页面或窗体上,可以将该控件的一个或多个实例添加到 Windows 窗体或 ASP.NET 应用程序中。您可以使用智能标记面板和属性来配置该控件和绑定报表。如果要以编程方式配置该控件,则也可以编写代码。

ReportViewer 控件一次显示一个报表。如果希望能够同时查看多个报表,可以将该控件的多个实例合并在一个页面或窗体上。也可以使用该控件的单个实例一次承载一个报表。若要使用单个控件显示报表序列,必须编写代码将报表与要使用的 ReportViewer 控件实例关联起来。

ReportViewer 控件以本地处理模式或以远程处理模式工作。

在本地处理模式中,控件打开报表定义,对其进行处理,然后在视图区域呈现报表。在本地处理模式中,可以从流、文件系统中的 .rdlc 文件或应用程序中的嵌入资源中获得报表定义。有关详细信息,请参阅 ReportPathLoadReportDefinitionReportEmbeddedResource

在远程处理模式中,控件从 Reporting Services 报表服务器中检索完全处理的报表。在远程处理模式中,所有数据处理和报表处理都在报表服务器上执行。远程处理模式通常用于预发布的报表,但是也可以将远程处理用于使用流提供的报表定义。有关更多信息,请参见 LoadReportDefinitionReportServerUrlReportPath

重要

不能在远程处理模式下使用 .rdlc 文件。远程处理模式需要 SQL Server 2008 或更高版本的 Reporting Services 的许可副本。远程处理用于支持具有 SQL Server Reporting Services 报表服务器并希望将该服务器与控件一起使用的组织。服务器解决方案提供了更好的可伸缩性和性能,并提供了诸如订阅、缓存及更多报表输出格式等其他功能。有关远程处理模式的更多信息,请参见将 ReportViewer 配置为进行远程处理部署报表和 ReportViewer 控件

如何添加和配置 ReportViewer 控件

  1. 向 .NET Framework 3.5 或 4.5 项目添加 Windows 窗体或 Web 窗体。

  2. 在图形设计模式下,将**“ReportViewer”控件从“工具箱”“报告”组拖至 Windows 窗体或 Web 窗体。控件包括“ReportViewer 任务”**智能标记面板,这样您可以立即选择报表。

    web.config 文件会自动用**“ReportViewer”**控件的 HTTP 处理程序进行更新。有关更多信息,请参见 ReportViewer 的 Web.config 设置

    备注

    若要在 Web 窗体中使用“ReportViewer”控件,您还必须向页面中添加一个 ScriptManager 控件。从“工具箱”窗口的“AJAX Extensions”组中,将“ScriptManager”控件拖到设计图面的“ReportViewer”控件上方。

  3. 在**“ReportViewer 任务”**智能标记面板中,选择任务以添加报表并配置控件。指定报表确定将控件配置为本地处理还是远程处理。

    • 单击**“设计新报表”**启动报表向导,并在您的应用程序中创建报表定义 (.rdlc) 文件。可以在您的应用程序中创建在客户端本地处理的新报表。若要了解有关创建报表的更多信息,请参见创建客户端报表定义 (.rdlc) 文件

    • 使用**“选择报表”来选择现有报表定义。您可以选择在项目中定义的本地报表定义 (.rdlc) 文件,也可以选择“服务器报表”**来选择在 SQL Server 2008 Reporting Services 报表服务器上发布的报表。

      选择服务器报表将控件配置为远程处理。若要选择服务器报表,必须知道报表服务器 URL 和报表的路径。引用处于本机模式的报表服务器上的报表时,报表路径以正斜杠 (/) 开头;引用处于 SharePoint 集成模式的报表服务器上的报表时,报表路径是完全限定的 URL。例如:

      本机模式:/Adventureworks 2008 Sample Reports/Company Sales 2008

      SharePoint 集成模式:http://MyServer/sites/MySite/MyLibrary/Adventureworks 2008 Sample Reports/Company Sales 2008.rdl

      若要运行报表,必须对报表服务器具有权限才能访问报表。如果不知道 URL 或报表路径,请咨询报表服务器管理员。有关服务器报表的更多信息,请参见将 ReportViewer 配置为进行远程处理

      选择现有的报表定义 (.rdlc) 文件将控件配置为本地处理。选择报表时,必须选择 .rdlc 文件;即使您的项目中包含 .rdl 文件,也不能指定 .rdlc 文件。有关更多信息,请参见创建客户端报表定义 (.rdlc) 文件

    • 单击**“在父容器中停靠”**展开 ReportViewer 控件的视图图面,以便它使用窗体或页面中所有可用空间。此选项可用于 Windows 窗体控件。

    • 单击**“重新绑定数据源”**更新报表中使用的数据表和业务对象的数据源绑定。此选项在为控件选择报表之后可用。如果修改报表数据源,或在图形报表设计环境之外修改数据绑定报表项(例如,直接编辑 XML),则需要重新绑定数据源。

  4. 选择**“ReportViewer”控件并打开“属性”**窗口。

  5. 对**“ReportViewer”**控件设置属性以确定视图区域的可见性和可用性。参阅引用文档来了解每个属性。有关更多信息,请参见 ReportViewer 属性。若要了解 ReportViewer 工具栏,请参见配置并使用 ReportViewer 工具栏

  6. 生成或部署应用程序以在窗体或页面中预览报表。

请参阅

概念

使用“ReportViewer 任务”智能标记面板

创建客户端报表定义 (.rdlc) 文件

将 ReportViewer 配置为进行本地处理

将 ReportViewer 配置为进行远程处理

ReportViewer Web 服务器控件和 Windows 窗体控件

其他资源

示例和演练

Considerations for Subreports and Local Processing Mode