CrystalReportViewer.OnDrill Método

Sincroniza el evento Drill entre dos controles CrystalReportViewer; para ello, actúa como el controlador de eventos predeterminado del segundo control.

Espacio de nombres CrystalDecisions.Web Ensamblado CrystalDecisions.Web (CrystalDecisions.Web.dll)

Sintaxis

Public Overrideable Sub OnDrill ( _
    ByVal source As Object, _   
    ByVal e As CrystalDecisions.Web.DrillEventArgs _    
) 
public virtual void OnDrill (
    object source,
    CrystalDecisions.Web.DrillEventArgs e
)

Parámetros

  • source
    El control CrystalReportViewer.
  • e
    Los datos relacionados con el evento Drill.

Comentarios

Cuando se produce el evento Drill en un CrystalReportViewer (denominado CrystalReportViewer1) el método OnDrill actúa como el controlador de eventos predeterminado de otro CrystalReportViewer (denominado CrystalReportViewer2). Esto sucede cuando se crea un nuevo DrillEventHandler para CrystalReportViewer1 que utiliza la dirección del método OnDrill de CrystalReportViewer2 como argumento. Cuando el usuario profundiza en el subinforme de CrystalReportViewer1, el subinforme de CrystalReportViewer2 reflejará la actividad del informe de CrystalReportViewer1. El código de evento Drill de CrystalReportViewer2 se omite, puesto que el evento de CrystalReportViewer2 no se ha desencadenado. Si el usuario profundiza en el subinforme de CrystalReportViewer2, se ejecutará el evento Drill de CrystalReportViewer2 y cualquier otro código siguiente.

Este método se puede utilizar como ayuda a la hora de comparar los datos de dos informes. Por ejemplo, una aplicación Web muestra dos informes de ventas mensuales, uno correspondiente a diciembre y otro a enero. Cuando se profundiza en el informe de ventas de diciembre, el informe de enero refleja las acciones del de diciembre. El usuario puede comparar las cifras de ventas de los dos informes sin necesidad de repetir las acciones con cada uno de ellos.

Ejemplo

En este ejemplo se muestra cómo crear el nuevo DrillEventHandler para CrystalReportViewer1 que delegará el evento a CrystalReportViewer2 mediante el método OnDrill. En este ejemplo se establece el origen del informe para el control CrystalReportViewer y, a continuación, crea el controlador de eventos.

      Private Sub Page_Load _
         (ByVal sender As System.Object, ByVal e As System.EventArgs) _
         Handles MyBase.Load
      
         Me.CrystalReportViewer1.ReportSource = _ 
            Me.MapPath("DecemberSales.rpt")
         Me.CrystalReportViewer2.ReportSource =  _
            Me.MapPath("JanuarySales.rpt")
         AddHandler CrystalReportViewer1.Drill, _
            AddressOf(CrystalReportViewer2.OnDrill)
      
      End Sub
      private void Page_Load(object sender, System.EventArgs e)
      {
         CrystalReportViewer1.ReportSource = 
            this.MapPath("DecemberSales.rpt");
         CrystalReportViewer2.ReportSource = 
            this.MapPath("JanuarySales.rpt");
         this.CrystalReportViewer1.Drill += new 
            CrystalDecisions.Web.DrillEventHandler
            (CrystalReportViewer2.OnDrill);
      }

Información de versión

Crystal Reports Basic for Visual Studio 2008

Admitido desde: Crystal Reports for Visual Studio .NET 2002

Vea también

Referencia

CrystalReportViewer Clase
CrystalReportViewer Miembros
CrystalDecisions.Web Espacio de nombres