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

ReportViewer 控件显示在 Visual Studio 中本地创建的报表和 SQL Server 2008 Reporting Services 中承载的远程报表。此外,这些控件还通过报表为用户交互提供支持。该控件有两个版本:用于 ASP.NET 页的 ReportViewer Web 服务器控件和可用于 Windows 窗体应用程序的 ReportViewer Windows 窗体控件。Visual Studio 根据用来嵌入控件的项目类型确定要使用的版本。如果在 ASP.NET 项目中嵌入 ReportViewer 控件,则自动获得 Web 服务器控件。

ReportViewer 功能

ReportViewer 控件的两种版本都支持以下功能:

  • 用于显示报表、工具栏和文档结构图的视图区域。工具栏是可配置的,它提供了运行时功能以支持多页报表中的导航、缩放、搜索、打印和导出功能。如果将一个文档结构图显式添加到报表中,将显示该结构图。

  • 本地处理的报表中支持以下导出格式:Excel、PDF、Word 和 Image。导出报表服务器上的报表时,可使用报表服务器支持的所有导出格式。

    提示

    导出本地处理的报表时,只能以编程方式选择 Image 导出格式。为此,请对 ASP.NET 使用 Render 方法,对 Windows 窗体使用 Render(String, String, CreateStream, array<Warning[]%) 方法。

  • 允许配置处理模式、视图区域和工具栏的属性。

  • 支持本地处理模式和远程处理模式,以便可以控制处理报表的位置和方式。本地处理模式处理在 Visual Studio 中本地创建的客户端报表定义。远程处理模式呈现在 SQL ServerReporting Services 报表服务器上完全处理的报表。

  • 编程接口,使您可以通过代码自定义控件、配置控件并与控件进行交互,包括更改在运行时由 ReportViewer 使用的数据源。

Web 服务器控件和 Windows 窗体控件之间的功能差异

您使用的控件类型可确定报表默认的显示格式和工具栏的可视化特征。在报表处理和部署策略方面,还存在其他差异。下表介绍了 ReportViewer Web 服务器控件与 Windows 窗体控件之间的差异:

默认的演示文稿格式

Web 服务器控件使用 HTML 格式显示报表,而 Windows 窗体控件使用图形设备界面 (GDI) 来提供与 Windows 用户界面样式一致的视觉体验。

处理

本地报表处理始终在 Windows 窗体控件中采用异步方式来执行。对于 Web 服务器控件,本地报表处理在默认情况下通过异步回发到 IIS 服务器进行处理,但您可以将其配置为使用同步回发。

部署

在 ASP.NET 应用程序的 Web 服务器控件中承载的报表部署战略必须考虑会话状态和 Web 场配置。

浏览器要求

Web 服务器控件对浏览器有要求。若要使用 Web 服务器控件中提供的所有报表功能,应使用启用了脚本的 Microsoft Internet Explorer 6.0 或更高版本。您可以使用其他浏览器,但是报表功能方面会存在一些功能限制。有关更多信息,请参见 ReportViewer Web 服务器控件的浏览器支持

除了了解控件之间的差异外,了解处理模式之间的差异也非常重要。有关更多信息,请参见 ReportViewer 控件 (Visual Studio)

请参阅

任务

演练:在本地处理模式下将数据库数据源与 ReportViewer Web 服务器控件一起使用

概念

部署报表和 ReportViewer 控件

配置 ReportViewer 以实现异步呈现

通过 ReportViewer 打印报表

添加和配置 ReportViewer 控件

配置并使用 ReportViewer 工具栏

其他资源

优化报表布局以进行 HTML 输出(Visual Studio 报表设计器)

报表概述 (Visual Studio)