Share via


Evento _XDocumentEventSink2_Event.OnMergeRequest

Se produce cuando se invoca la operación de combinación desde la interfaz de usuario de Microsoft InfoPath o desde la línea de comandos mediante la opción /aggregate.

Espacio de nombres:  Microsoft.Office.Interop.InfoPath.SemiTrust
Ensamblado:  Microsoft.Office.Interop.InfoPath.SemiTrust (en Microsoft.Office.Interop.InfoPath.SemiTrust.dll)

Sintaxis

'Declaración
Event OnMergeRequest As _XDocumentEventSink2_OnMergeRequestEventHandler
'Uso
Dim instance As _XDocumentEventSink2_Event
Dim handler As _XDocumentEventSink2_OnMergeRequestEventHandler

AddHandler instance.OnMergeRequest, handler
event _XDocumentEventSink2_OnMergeRequestEventHandler OnMergeRequest

Comentarios

Si la propiedad ReturnStatus del objeto MergeEventObject se establece como false, InfoPath cancela la operación de combinación. Si se produce un error en el código del evento OnMergeRequest, InfoPath lo omite y se basa en la propiedad ReturnStatus. Si no se establece explícitamente la propiedad ReturnStatus, se usará el valor predeterminado: false.

En el caso de formularios InfoPath almacenados en una biblioteca de formularios de Windows SharePoint Services, el evento OnMergeRequest también se produce cuando se ejecuta el método MergeDocuments2 del control OpenXMLDocuments. Para obtener más información sobre el control OpenXMLDocuments vea el Kit de desarrollo de software (SDK) de Productos y tecnologías de Microsoft SharePoint 2003, que está disponible en el sitio web de Microsoft Developer Network (MSDN, https://msdn.microsoft.com/es-es/default.aspx).

Nota

En la ventana de diseño de formulario de InfoPath no hay ninguna interfaz de usuario para crear este controlador de eventos. Para agregar este controlador de eventos al proyecto, incluya el atributo InfoPathEventHandler tal como aparece en el ejemplo.

Ejemplos

En el ejemplo siguiente, el controlador del evento OnMergeRequest realiza una operación de combinación y establece variables para indicar el estado de dicha operación:

private bool _merging = false;

[InfoPathEventHandler(EventType=InfoPathEventType.OnMergeRequest)]
public void OnMergeRequest(MergeEvent e)
{ 
 // Set global property to indicate that forms are being merged.
 if (e.Index == 0)
 {
  _merging = true;
 }

 thisXDocument.ImportDOM(e.DOM);
 e.ReturnStatus = true;
  
 if ((e.Index + 1) == e.Count)
 {
  _merging = false;
  thisXDocument.UI.Alert("Your request to merge " + e.Count + " files is now complete.");
 }
}

Vea también

Referencia

interfaz _XDocumentEventSink2_Event

Miembros _XDocumentEventSink2_Event

Espacio de nombres Microsoft.Office.Interop.InfoPath.SemiTrust