Il peut arriver que vous ayez des actions assez longues à réaliser sur le XML de votre formulaire.
Je penses notamment à l'ajout automatique de lignes dans une section extensible.
Les vues InfoPath étant liées directement au XML, une modification dans ce dernier entraine une mise à jour de la vue.
Pour s'abstenir de ce genre de comportement, il est possible d'utiliser la méthode DisableAutoUpdate.
Cette méthode permet d'attendre la fin des modifications du XML avant de rafraichir la vue InfoPath (ce qui permet de gagner un gain non négligeable de performances).
Pour se faire, il faut utiliser la méthode de la manière suivante:
// Décorrelation de la vue avec le XML
this.CurrentView.DisableAutoUpdate();
// Modification sur le XML (par exemple ajout de 100 lignes dans un tableau extensible)
...
// Corrélation de la vue avec le XML
this.CurrentView.EnableAutoUpdate();
Vous pourrez trouver un article du MSDN concernant cette méthode à cette adresse:
http://msdn.microsoft.com/en-us/library/microsoft.office.infopath.view.disableautoupdate(v=office.11).aspx
Attention toutefois à bien repositionner le "EnableAutoUpdate() à la fin du traitement sous peine d'avoir de sérieux dysfonctionnements dans le formulaire...
Aucun commentaire:
Enregistrer un commentaire