Evento IRowProvider.RowReady

NOTA: esta API está ahora obsoleta.

Se produce cuando cambia la fila seleccionada en un elemento Web de proveedor, como cuando se actualiza o se selecciona una fila.

Espacio de nombres:  Microsoft.SharePoint.WebPartPages.Communication
Ensamblado:  Microsoft.SharePoint (en Microsoft.SharePoint.dll)

Sintaxis

'Declaración
<ObsoleteAttribute("Use System.Web.UI.WebControls.WebParts.IWebPartRow instead")> _
Event RowReady As RowReadyEventHandler
'Uso
Dim instance As IRowProvider
Dim handler As RowReadyEventHandler

AddHandler instance.RowReady, handler
[ObsoleteAttribute("Use System.Web.UI.WebControls.WebParts.IWebPartRow instead")]
event RowReadyEventHandler RowReady

Comentarios

El controlador de eventos recibe un argumento de tipo Microsoft.SharePoint.WebPartPages.Communication.RowReadyEventArgs que contiene los datos relacionados con este evento. Los siguientes de propiedades de RowReadyEventArgsRows y SelectionStatus proporcionan información específica de este evento

Ejemplos

En el ejemplo de código siguiente se muestra un método invalidado PartCommunicationMain que crea un objeto deRowReadyEventArgs, se establece los valores de fila y el estado de selección y, a continuación, se desencadena el evento RowReady . Este ejemplo de código forma parte de un ejemplo más extenso de la interfaz IRowProvider .

      ' Step #8: Override the PartCommunicationMain method.
      ' The PartCommunicationMain method is called by the Web Part 
      ' infrastructure on the client during the 
      ' ASP.NET PreRender event to allow the part to pass its primary 
      ' data to the other connected parts.
      ' It is important to always fire the RowReady event. Some parts
      ' may not behave properly if they are left waiting for this 
      ' information.
       Public Overrides Sub PartCommunicationMain()
            ' Check if connected.
            If _connected Then
                'Create the RowReadyEventArgs object for the RowReady event.
                Dim rowReadyEventArgs As New RowReadyEventArgs()

                ' Declare data variables.
                Dim selectionStatus As String = ""
                Dim dr(0) As DataRow

                ' If a row is selected, send the row.
                If _dataGrid.SelectedIndex > -1 Then
                    ' Generate an array containing the selected DataRow(s).
                    dr(0) = CType(_dataGrid.DataSource, DataTable).Rows(_dataGrid.SelectedIndex)

                    ' Set the selection status.
                    selectionStatus = "Standard"

                Else
                    ' The user hasn't selected a row so send null.
                    dr(0) = Nothing

                    ' Set the selection status.
                    selectionStatus = "None"
                End If

                ' Set values.
                rowReadyEventArgs.Rows = dr
                rowReadyEventArgs.SelectionStatus = selectionStatus

                ' Fire the RowReady event.
                RaiseEvent RowReady(Me, rowReadyEventArgs)
            End If
        End Sub
        // Step #8: Override the PartCommunicationMain method.
        // The PartCommunicationMain method is called by the Web Part 
        // infrastructure on the client during the 
        // ASP.NET PreRender event to allow the part to pass its 
        // primary data to the other connected parts.
        // It is important to always fire the RowReady event. Some 
        // parts may not behave properly if they are left waiting for 
        // this information.
        public override void PartCommunicationMain()
        {
            // Check if connected.
            if(_connected)
            {
                //If there is a listener, fire the RowReady event.
                if (RowReady != null)
                {
                    // Create the RowReadyEventArgs object for the 
                    // RowReady event.
                    RowReadyEventArgs rowReadyEventArgs = new RowReadyEventArgs();

                    // Declare data variables.
                    string selectionStatus = "";
                    DataRow[] dr = new DataRow[1];

                    // If a row is selected, send the row.
                    if ( _dataGrid.SelectedIndex > -1)
                    {
                        // Generate an array containing the selected 
                        // DataRow(s).
                        dr[0] = ((DataTable)_dataGrid.DataSource).Rows[_dataGrid.SelectedIndex];
                    
                        // Set the selection status.
                        selectionStatus = "Standard";

                    }
                    else
                    {
                        // The user hasn't selected a row so send null.
                        dr[0] = null;

                        // Set the selection status.
                        selectionStatus = "None";
                    }

                    // Set values.
                    rowReadyEventArgs.Rows = dr;
                    rowReadyEventArgs.SelectionStatus = selectionStatus;

                    // Fire the RowReady event.
                    RowReady(this, rowReadyEventArgs);
                }
            }
        }

Vea también

Referencia

interfaz IRowProvider

Miembros IRowProvider

Espacio de nombres Microsoft.SharePoint.WebPartPages.Communication