ReportDocument.OpenSubreport 方法

打开报表中包含的子报表并返回与命名子报表对应的 ReportDocument 对象。

[Visual Basic]

Public Overrideable Function OpenSubreport( _
   ByVal subreportName As String _
) As CrystalDecisions.CrystalReports.Engine.ReportDocument

[C#]

public virtual CrystalDecisions.CrystalReports.Engine.ReportDocument OpenSubreport(
   string subreportName
);

参数

  • subreportName
    指明要打开的子报表的名称。

返回值

返回表示子报表的单独的 ReportDocument。

备注

将值从 SubreportObject 的 SubreportName 属性作为 subreportName 参数传递。

将子报表视为用于格式化、预览、打印和导出目的的报表。

示例

下面的示例打开和预览子报表。

  
[VJ#]
      private void openSubreport(String reportObjectName)
      {
         String subreportName;
         SubreportObject subreportObject;
         ReportDocument subreport = new ReportDocument();
      
         try
         {
            subreportObject = (SubreportObject)Report.get_ReportDefinition()
               .get_ReportObjects().get_Item(reportObjectName);
            subreportName = subreportObject.get_SubreportName();
            subreport = Report.OpenSubreport(subreportName);
         }
         catch (Exception e)
         {
            return;
         }
         crystalReportViewer1.set_ReportSource( subreport );
      };      
      
  
[Visual Basic]
      Private Sub OpenSubreport(ByVal reportObjectName As String)
         Dim subreportName As String
         Dim subreportObject As SubreportObject
         Dim subreport As New ReportDocument()
      
         If TypeOf (Report.ReportDefinition.ReportObjects. _
         Item(reportObjectName)) Is SubreportObject Then
            subreportObject = Report.ReportDefinition.ReportObjects. _
                Item(reportObjectName)
            subreportName = subreportObject.SubreportName
            subreport = Report.OpenSubreport(subreportName)
            crystalReportViewer1.ReportSource = subreport
         End If
      End Sub
      
  
[C#]
      private void OpenSubreport(string reportObjectName)
      {
         string subreportName;
         SubreportObject subreportObject;
         ReportDocument subreport = new ReportDocument();
      
         subreportObject = Report.ReportDefinition.ReportObjects
         [reportObjectName] as SubreportObject;
         if (subreportObject != null)
         {
            subreportName = subreportObject.SubreportName;
            subreport = Report.OpenSubreport(subreportName);
            crystalReportViewer1.ReportSource = subreport;
         }
      } 
      

要求

命名空间 CrystalDecisions.CrystalReports.Engine

程序集 CrystalDecisions.CrystalReports.Engine (CrystalDecisions.CrystalReports.Engine.dll)

请参见

ReportDocument 类 | ReportDocument 成员 | CrystalDecisions.CrystalReports.Engine 命名空间

**

©2005 Business Objects SA 保留所有权利。

Business Objects SA
http://www.china.businessobjects.com/
支持服务
http://www.china.businessobjects.com/