Partager via


FormEvents.Loading - Événement

Se produit après le chargement du modèle de formulaire mais avant l'initialisation d'une vue quelconque.

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

Syntaxe

'Déclaration
Public MustOverride Event Loading As LoadingEventHandler
'Utilisation
Dim instance As FormEvents
Dim handler As LoadingEventHandler

AddHandler instance.Loading, handler
public abstract event LoadingEventHandler Loading

Exceptions

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 Loading 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 InfoPath 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 : Ajouter un gestionnaire d'événements.

L'événement Loading est lié à l'aide du délégué LoadingEventHandler.

L'événement Loading se produit avant le chargement du formulaire et avant le rendu d'une vue quelconque.

Si un modèle de formulaire est déployé sur une bibliothèque de documents correctement configurée et ouvert à partir de cette application sur SharePoint Server 2010 exécutant InfoPath Forms Services, l'événement Loading ne se produit qu'une seule fois par session.

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

Notes

Lorsque l'événement Loading se produit, la vue n'est pas initialisée et la transformation XSL (XSLT) utilisée pour la vue n'est pas encore chargée. L'objet XmlForm n'est ajouté à la collection XmlFormCollection qu'une fois l'événement Loading déclenché. L'objet XmlForm est toutefois accessible pendant l'événement Loading.

Il est impossible d'appeler les propriétés et méthodes suivantes dans le gestionnaire d'événements Loading :

Quit

DisableAutoUpdate

EnableAutoUpdate

ExecuteAction

Export

ForceUpdate

GetContextNodes

GetSelectedNodes

SelectNodes

SelectText

SwitchView

Close

MergeForm

New

Save

SaveAs

Submit

Print

NewFromFormTemplate

Close

TaskPanes

Il n'est pas possible d'appeler les membres des classes AdoSubmitConnection, EmailSubmitConnection ou FileSubmitConnection dans le gestionnaire d'événements Loading.

Vous pouvez accéder à ce type ou à ce membre à partir du code exécuté dans les formulaires ouverts dans Microsoft InfoPath Filler ou dans un navigateur web.

Exemples

Dans l'exemple suivant, le gestionnaire de l'événement Loading permet de déterminer si le formulaire a été signé numériquement et, si ce n'est pas le cas, affecte la date du jour au champ Date1.

public void FormEvents_Loading(object sender, LoadingEventArgs e)
{
   if (this.Signed)
   {
         e.CancelableArgs.Message = 
            "This form is digitally signed. Loading is cancelled.";
         e.CancelableArgs.Cancel = true;
   }

   XPathNavigator myDate = 
      CreateNavigator().SelectSingleNode("/my:myFields/my:date1",
      NamespaceManager);

   // Check for and delete xsi:nil="true" attribute.
   if (myDate.MoveToAttribute("nil", 
      "http://www.w3.org/2001/XMLSchema-instance"))
   {
      myDate.DeleteSelf();
   }

   myDate.SetValue(System.DateTime.Now.ToString("yyyy-MM-dd"));
}
Public Sub FormEvents_Loading(ByVal sender As Object, _
   ByVal e As LoadingEventArgs)
   If (Me.Signed)Then
         e.CancelableArgs.Message = 
            "This form is digitally signed. Loading is cancelled."
         e.CancelableArgs.Cancel = True
   End If

   Dim myDate As XPathNavigator = 
      CreateNavigator().SelectSingleNode("/my:myFields/my:date1",
      NamespaceManager)

   ' Check for and delete xsi:nil="true" attribute.
   If (myDate.MoveToAttribute("nil", 
      "http://www.w3.org/2001/XMLSchema-instance"))
      myDate.DeleteSelf();
   End If

   myDate.SetValue(System.DateTime.Now.ToString("yyyy-MM-dd"));
End Sub

Voir aussi

Référence

FormEvents classe

FormEvents - Membres

Microsoft.Office.InfoPath - Espace de noms