Partager via


FormEvents.Submit, événement

Se produit lors de l'utilisation de la commande Envoyer dans l'interface utilisateur ou de l'appel de la méthode Submit.

Espace de noms : Microsoft.Office.InfoPath
Assembly : Microsoft.Office.InfoPath (dans microsoft.office.infopath.dll)

Syntaxe

Public Event Submit As SubmitEventHandler

Dim instance As FormEvents
Dim handler As SubmitEventHandler

AddHandler instance.Submit, handler
public abstract event SubmitEventHandler Submit

Exceptions

Type d'exception Condition

InvalidOperationException

Le développeur a tenté de lier l'événement dans un emplacement autre que la méthode InternalStartup.

Remarques

Important :

L'événement Submit n'est pas destiné à être instancié par le développeur dans le code de formulaire. Vous ne devez ajouter des gestionnaires d'événements pour les événements au niveau du formulaire qu'à partir de l'interface utilisateur Microsoft Office InfoPath 2007 en mode Création. Lorsque vous ajoutez un gestionnaire d'événements à votre modèle de formulaire à partir de l'interface utilisateur en mode Création, InfoPath génère du code dans la méthode InternalStartup du fichier de code de votre formulaire à l'aide de la classe EventManager et du membre de la classe FormEvents pour lier l'événement à son gestionnaire d'événements. Pour plus d'informations sur l'ajout de gestionnaires d'événements en mode Création dans InfoPath, consultez Procédure d'ajout d'un gestionnaire d'événements.

L'événement Submit est généré dans le seul cas où l'option Effectuer une action personnalisée à l'aide du code est activée dans la boîte de dialogue Options d'envoi pour le modèle de formulaire.

L'événement Submit est lié à l'aide du délégué SubmitEventHandler.

L'événement Submit peut être annulé en utilisant la propriété CancelableArgs de la classe MergeEventArgs pour affecter à la propriété Cancel la valeur true.

Si le code du gestionnaire d'événements utilise la propriété CancelableArgs pour définir les chaînes des propriétés Message ou MessageDetails mais si la propriété CancelableArgs.Cancel conserve le paramètre false par défaut, un message de réussite s'affiche avec le texte des propriétés Message et MessageDetails. Ce message se substitue aux options de message personnalisé Afficher les messages de réussite et d'échec et En cas de réussite de la boîte de dialogue Options d'envoi de formulaire.

De la même manière, si le code du gestionnaire d'événements définit les chaînes des propriétés Message ou MessageDetails et affecte à la propriété CancelableArgs.Cancel la valeur true, un message d'échec est affiché. Le message affiché contient le texte des propriétés Message et MessageDetails, remplaçant les options de la boîte de dialogue Options d'envoi de formulaire.

Si le code du gestionnaire d'événements conserve, pour les deux propriétés Message et MessageDetails, la valeur null par défaut mais affecte à CancelableArgs.Cancel la valeur true, l'opération d'envoi est considérée comme ayant échoué. Les paramètres définis dans la boîte de dialogue Options d'envoi déterminent l'affichage éventuel d'un message et son contenu.

Il est impossible d'effectuer des appels à la méthode Quit de la classe Application dans le gestionnaire d'événements Submit.

Ce type ou ce membre est accessible à partir du code exécuté dans les formulaires ouverts dans Microsoft Office InfoPath 2007 ou un navigateur Web.

Exemple

Dans l'exemple suivant, le gestionnaire d'événements de l'événement Submit permet d'empêcher l'envoi du formulaire si le formulaire n'a pas été enregistré.

public void FormEvents_Submit(object sender, SubmitEventArgs e)
{
   if(this.Dirty || this.New)
      MessageBox.Show("Please save this form before submitting it.");
      e.CancelableArgs.Cancel = true;
   else
      e.CancelableArgs.Message = "Submit succeeded.";
}
Public Sub FormEvents_Submit(ByVal sender As Object, _
   ByVal e As SubmitEventArgs)
   If(Me.Dirty Or Me.New) Then
      MessageBox.Show("Please save this form before submitting it.")
      e.CancelableArgs.Cancel = True
   Else
      e.CancelableArgs.Message = "Submit succeeded."
   End If
End Sub

Voir aussi

Référence

FormEvents, classe
Membres FormEvents
Microsoft.Office.InfoPath, espace de noms