Procédure d'ajout d'un gestionnaire d'événements
Les procédures d'ajout de gestionnaires d'événements à un modèle de formulaire avec code géré Microsoft Office InfoPath 2007 à l'aide de Microsoft Visual Studio Tools for Applications (VSTA) sont les mêmes que celles utilisées pour l'ajout de gestionnaires d'événements dans des scripts. Par exemple, pour ajouter un gestionnaire d'événements à l'événement Loading, ouvrez le modèle de formulaire dans InfoPath en mode Création, pointez sur Programmation dans le menu Outils, puis cliquez sur Événement Chargement en cours (Loading). Le focus bascule automatiquement sur le gestionnaire d'événements squelette dans l'Éditeur de code VSTA.
Les mêmes procédures sont utilisées dans Visual Studio 2005 avec Microsoft Visual Studio 2005 Tools pour Microsoft Office System2007 et dans Visual Studio 2008 avec Visual Studio Tools pour Office à l'exception de l'ajout de gestionnaires d'événements dans les événements de niveau formulaire (événements Loading, ViewSwitched, ContextChanged et Sign). Ces différences sont mentionnées dans les procédures suivantes.
Important : |
---|
L'ajout d'un gestionnaire d'événements génère du code de liaison d'événement dans la méthode InternalStartup du fichier FormCode.cs ou FormCode.vb de votre projet de modèle de formulaire. Ne créez pas la méthode InternalStartup et n'y rajoutez aucun code supplémentaire par vous-même. |
Ajout d'un gestionnaire d'événement pour l'événement Click d'un contrôle Bouton
Si vous utilisez InfoPath, ouvrez le modèle de formulaire en mode Création.
Si vous utilisez Visual Studio, ouvrez un projet Modèle de formulaire InfoPath.
Dans le volet Office Contrôles ou dans la Boîte à outils Visual Studio, faites glisser un bouton dans le formulaire.
Double-cliquez sur le bouton, puis cliquez sur Modifier le code du formulaire.
Le focus bascule sur le gestionnaire d'événements squelette de l'événement Clicked dans l'Éditeur de code VSTA ou Visual Studio.
Ajout d'un gestionnaire d'événements pour l'événement Changing, Validating ou Changed d'un champ ou d'un groupe
Si vous utilisez InfoPath, ouvrez le modèle de formulaire en mode Création.
Si vous utilisez Visual Studio, ouvrez un projet Modèle de formulaire InfoPath.
Cliquez avec le bouton droit de la souris sur un contrôle d'entrée de données lié au champ ou au groupe, par exemple un contrôle Zone de texte.
Pointez sur Programmation, puis cliquez sur l'événement pour lequel vous souhaitez créer un gestionnaire d'événements. Le focus bascule sur le gestionnaire d'événements squelette de l'événement Changing, Validating ou Changed dans l'Éditeur de code VSTA ou Visual Studio.
Remarque Si vous avez activé la case à cocher Activer les fonctions compatibles avec le navigateur uniquement dans la boîte de dialogue Créer un formulaire lors de la création du modèle de formulaire, ou si vous avez activé la case à cocher Crée un modèle de formulaire qui peut être ouvert dans un navigateur ou dans InfoPath dans la boîte de dialogue Options de formulaire, catégorie Compatibilité, la commande pour l'Événément Modification en cours (Changing) n'est pas disponible. La raison en est que les gestionnaires d'événements de l'événement Changing ne sont pas pris en charge dans la logique métier des modèles de formulaire publiés dans les bibliothèques de documents sur Microsoft Office Forms Server 2007 ou Microsoft Office SharePoint Server 2007 avec InfoPath Forms Services.
Ajout d'un gestionnaire d'événements pour les événements Loading, ViewSwitched, ContextChanged et Sign d'un formulaire
Si vous utilisez InfoPath, ouvrez le modèle de formulaire en mode Création.
Si vous utilisez Visual Studio, ouvrez un projet Modèle de formulaire InfoPath.
Dans InfoPath, pointez sur Programmation dans le menu Outils, puis cliquez sur l'événement de formulaire pour lequel vous souhaitez écrire un gestionnaire d'événements.
Dans Visual Studio, pointez sur Événement dans le menu Insertion, puis cliquez sur l'événement de formulaire pour lequel vous souhaitez écrire un gestionnaire d'événements.
Le focus bascule sur le gestionnaire d'événements squelette de l'événement Loading, ViewSwitched, ContextChanged ou Sign dans l'Éditeur de code VSTA ou Visual Studio.
Remarque Si vous avez activé la case à cocher Activer les fonctions compatibles avec le navigateur uniquement dans la boîte de dialogue Créer un formulaire lors de la création du modèle de formulaire, ou si vous avez activé la case à cocher Crée un modèle de formulaire qui peut être ouvert dans un navigateur ou dans InfoPath dans la boîte de dialogue Options de formulaire, catégorie Compatibilité, la commande pour l'Événement Contexte modifié (ContextChanged) ou l'Événement Signature (Sign) n'est pas disponible. La raison en est que les gestionnaires d'événements pour les événements ContextChanged et Sign ne sont pas pris en charge dans la logique métier publiée dans les bibliothèques de documents sur Microsoft Office Forms Server 2007 ou Microsoft Office SharePoint Server 2007 avec InfoPath Forms Services.
Ajout d'un gestionnaire d'événements pour l'événement Submit d'un formulaire
Si vous utilisez InfoPath, ouvrez le modèle de formulaire en mode Création.
Si vous utilisez Visual Studio, ouvrez un projet Modèle de formulaire InfoPath, puis cliquez sur l'onglet manifest.xsf [Création] pour afficher le créateur de formulaires.
Dans le menu Outils, cliquez sur Options d'envoi.
Activez la case à cocher Autoriser les utilisateurs à envoyer ce formulaire, cliquez sur Effectuer une action personnalisée à l'aide du code, puis sur Modifier le code.
Le focus bascule sur le gestionnaire d'événements squelette de l'événement Submit dans l'Éditeur de code VSTA ou Visual Studio.
Ajout d'un gestionnaire d'événements pour l'événement Save d'un formulaire
Si vous utilisez InfoPath, ouvrez le modèle de formulaire en mode Création.
Si vous utilisez Visual Studio, ouvrez un projet Modèle de formulaire InfoPath, puis cliquez sur l'onglet manifest.xsf [Création] pour afficher le créateur de formulaires.
Dans le menu Outils, cliquez sur Options de formulaire.
Cliquez sur la catégorie Ouvrir et enregistrer, activez la case à cocher Enregistrer au moyen d'un code personnalisé, puis cliquez sur Modifier.
Le focus bascule sur le gestionnaire d'événements squelette de l'événement Save dans l'Éditeur de code VSTA ou Visual Studio.
Remarque Si vous avez activé la case à cocher Activer les fonctions compatibles avec le navigateur uniquement dans la boîte de dialogue Créer un formulaire lors de la création du modèle de formulaire, ou si vous avez activé la case à cocher Crée un modèle de formulaire qui peut être ouvert dans un navigateur ou dans InfoPath dans la boîte de dialogue Options de formulaire, catégorie Compatibilité, la case à cocher Enregistrer au moyen d'un code personnalisé n'est pas disponible. La raison en est que les gestionnaires d'événements de l'événement Save ne sont pas pris en charge dans la logique métier des modèles de formulaire publiés dans les bibliothèques de documents sur Microsoft Office Forms Server 2007 ou Microsoft Office SharePoint Server 2007 avec InfoPath Forms Services.
Ajout d'un gestionnaire d'événements pour l'événement VersionUpgrade d'un formulaire
Si vous utilisez InfoPath, ouvrez le modèle de formulaire en mode Création.
Si vous utilisez Visual Studio, ouvrez un projet Modèle de formulaire InfoPath, puis cliquez sur l'onglet manifest.xsf [Création] pour afficher le créateur de formulaires.
Dans le menu Outils, cliquez sur Options de formulaire.
Cliquez sur la catégorie Programmation, sélectionnez Utiliser un événement personnalisé dans la liste déroulante Mise à niveau de la version, puis cliquez sur Modifier.
Le focus bascule sur le gestionnaire d'événements squelette de l'événement Save dans l'Éditeur de code VSTA ou Visual Studio.
Ajout d'un gestionnaire d'événements pour l'événement Merge d'un formulaire
Si vous utilisez InfoPath, ouvrez le modèle de formulaire en mode Création.
Si vous utilisez Visual Studio, ouvrez un projet Modèle de formulaire InfoPath, puis cliquez sur l'onglet manifest.xsf [Création] pour afficher le créateur de formulaires.
Dans le menu Outils, cliquez sur Options de formulaire.
Cliquez sur la catégorie Avancé, activez la case à cocher Activer la fusion de formulaires, puis cliquez sur Modifier.
Le focus bascule sur le gestionnaire d'événements squelette de l'événement Merge dans l'Éditeur de code VSTA ou Visual Studio.
Remarque Si vous avez activé la case à cocher Activer les fonctions compatibles avec le navigateur uniquement dans la boîte de dialogue Créer un formulaire lors de la création du modèle de formulaire, ou si vous avez activé la case à cocher Crée un modèle de formulaire qui peut être ouvert dans un navigateur ou dans InfoPath dans la boîte de dialogue Options de formulaire, catégorie Compatibilité, la case à cocher Activer la fusion de formulaires n'est pas disponible. La raison en est que les gestionnaires d'événements de l'événement Merge ne sont pas pris en charge dans la logique métier des modèles de formulaire publiés dans les bibliothèques de documents sur Microsoft Office Forms Server 2007 ou Microsoft Office SharePoint Server 2007 avec InfoPath Forms Services.