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
Public Event Loading As LoadingEventHandler
Dim instance As FormEvents
Dim handler As LoadingEventHandler
AddHandler instance.Loading, handler
public abstract event LoadingEventHandler Loading
Exceptions
Type d'exception | Condition |
---|---|
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 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 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 Microsoft Office Forms Server 2007 et ouvert à partir de cette application ou d'une autre bibliothèque de documents correctement configurée dans Office SharePoint Server 2007, 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.
Remarque |
---|
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 :
Il n'est pas possible d'appeler les membres des classes AdoSubmitConnection, EmailSubmitConnection ou FileSubmitConnection dans le gestionnaire d'événements Loading.
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 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
Membres FormEvents
Microsoft.Office.InfoPath, espace de noms