Partager via


Objets dans l’API ECMAScript de Visio Services

Dernière modification : mardi 3 décembre 2013

S’applique à : SharePoint Server 2010

Dans cet article
Objet VwaControl
Objet Page
Objet ShapeCollection
Objet Shape

L’API JavaScriptVisio Services contient uniquement quatre objets et leurs membres respectifs :

De plus, l’API JavaScriptVisio Services contient quatre énumérations :

Objet VwaControl

L’objet VwaControl représente une instance du composant WebPart Visio Web Access. Grâce aux méthodes de l’objet VwaControl, vous pouvez accéder à des informations relatives au composant WebPart et au dessin Visio affiché dans le composant WebPart. De plus, ces méthodes vous permettent d’effectuer différentes actions, par exemple ouvrir un document Visio dans le composant WebPart, obtenir et définir la page active à afficher, ajouter ou supprimer des gestionnaires d’événements, et afficher ou masquer des messages personnalisés.

Dans votre code JavaScript, vous pouvez obtenir une référence à l’objet VwaControl en attachant un gestionnaire à l’événement de chargement de la classe ASP.NET AJAXSys.Application. Dans la fonction qui implémente ce gestionnaire, vous pouvez initialiser l’objet en le passant à l’identificateur (ID) HTML du composant WebPart Visio Web Access qui doit héberger l’objet. Vous pouvez obtenir cet ID en examinant le code source de la page HTML qui héberge le composant WebPart et en recherchant l'expression class="VisioWebAccess". L’ID est au format « WebPartWPQ# », où # représente le numéro d’identification du composant WebPart. L’exemple de code suivant illustre comment procéder. Il suppose que vous avez déterminé que l’ID de composant WebPart est WebPartWPQ3 et que vous avez ouvert un dessin Visio publié en tant que fichier .vdw dans le composant WebPart. Ceci est illustré dans le code suivant.

Sys.Application.add_load(onApplicationLoad)

var webPartElementID = "WebPartWPQ3";
var vwaControl;

function onApplicationLoad() {
        try{
                vwaControl= new Vwa.VwaControl(webPartElementID)
                vwaControl.addHandler("diagramcomplete", onDiagramComplete);
        }
        catch(err){
        }
}

Lorsque vous obtenez une référence à une instance de l’objet VwaControl, vous pouvez utiliser sa méthode openDiagram pour ouvrir un nouveau diagramme, basé sur un fichier .vdw Visio publié, dans le composant WebPart Visio Web Access. Toutefois, après l’appel de la méthode openDiagram, vous ne pouvez plus gérer la même instance du VwaControl ou tout autre objet dans l’espace de noms Vwa car la méthode openDiagram est une opération asynchrone qui ouvre le diagramme sur le serveur puis retourne immédiatement. En outre, l’opération asynchrone rend l’objet VwaControl actif non valide. Pour plus d’informations, voir Vwa.VwaControl.openDiagram Method.

Le meilleur moyen de poursuivre un appel à openDiagram consiste à créer un gestionnaire pour Vwa.diagramcomplete Event, ce qui se produit lorsque le composant WebPart Visio Web Access a terminé de charger le diagramme Visio, et de placer votre code dans ce gestionnaire d’événement. Vous pouvez utiliser Vwa.VwaControl.addHandler Method pour ajouter un gestionnaire d’événement pour l’événement diagramcomplete. La meilleure pratique consiste à programmer l’objet VwaControl en écrivant ces gestionnaires d’événements de façon à répondre aux événements générés par des actions utilisateur dans le contrôle. Parmi les autres événements exposés par l’objet VwaControl figurent Vwa.shapemouseenter Event, Vwa.shapemouseleave Event et Vwa.shapeselectionchanged Event, qui vous permettent de répondre à des actions de souris utilisateur, ainsi que Vwa.diagramerror Event, qui vous permet de répondre aux erreurs renvoyées par SharePoint Server 2010.

Dans le gestionnaire de l’événement diagramcomplete, vous pouvez obtenir des références aux autres objets exposés par l’API, notamment l’objet Page et l’objet Shape, ainsi que la collection ShapeCollection. Dans le même gestionnaire, vous pouvez également créer des gestionnaires pour d’autres événements, comme illustré dans l’exemple de code suivant.

function onDiagramComplete() {
        try {
                vwaPage = vwaControl.getActivePage();
                vwaShapes = vwaPage.getShapes();
                vwaShape = vwaShapes.getItemAtIndex(0);
                vwaControl.addHandler("shapeselectionchanged", onShapeSelectionChanged);
        }
        catch(err) {
        }
}

Cet exemple de code montre comment effectuer les tâches de programmation suivantes :

  • comment utiliser Vwa.VwaControl.getActivePage Method pour obtenir une référence à une instance de l’objet Page qui représente la page active ;

  • comment utiliser la méthode Vwa.Page.getShapes Method de l’objet Page pour obtenir une instance de la collection ShapeCollection qui représente la collection de formes sur la page active ;

  • comment utiliser la méthode Vwa.ShapeCollection.getItemAtIndex Method de cette collection pour obtenir une instance de la première forme dans la collection de formes sur la page active ;

  • comment ajouter un gestionnaire pour l’événement shapeselectionchanged.

Pour obtenir davantage d’informations sur le dessin affiché dans le composant WebPart, vous pouvez utiliser plusieurs méthodes de l’objet VwaControl. Vous pouvez par exemple utiliser la méthode Vwa.VwaControl.getAllPageIds Method pour obtenir les noms de toutes les pages contenues dans le diagramme. Vous pouvez utiliser la méthode Vwa.VwaControl.getDiagramUrl Method pour obtenir l’URL du diagramme affiché actuellement dans le composant WebPart et la méthode Vwa.VwaControl.getDisplayMode Method pour déterminer si la page de dessin Web active est affichée au moyen de la technologie de rastérisation ou de la technologie Microsoft Silverlight. Vous pouvez également utiliser la méthode Vwa.VwaControl.getVersion Method pour obtenir la version du composant WebPart.

La méthode Vwa.VwaControl.removeHandler Method vous permet de supprimer un gestionnaire d’événement que vous avez ajouté, tandis que la méthode Vwa.VwaControl.clearHandlers Method supprime tous les gestionnaires. Pour afficher et masquer des pages de messages d’erreur HTML personnalisées, utilisez Vwa.VwaControl.displayCustomMessage Method et Vwa.VwaControl.hideCustomMessage Method. Vous pouvez également utiliser la méthode Vwa.VwaControl.setActivePage Method pour modifier la page affichée actuellement dans le composant WebPart et la méthode Vwa.VwaControl.refreshDiagram Method pour actualiser la page de dessin Web active à l’aide de données du serveur.

Objet Page

L’objet Page représente la page de dessin Web active affichée actuellement dans la zone de rendu du composant WebPart Visio Web Access. Vous pouvez utiliser les méthodes de l’objet Page pour sélectionner des formes sur la page et accéder à des informations sur les formes, notamment l’ID et la position de la forme, ainsi que la taille du cadre englobant autour de la forme. Vous pouvez également obtenir et définir le niveau d’agrandissement et la position de la page dans l’affichage.

Voici quelques-unes des autres méthodes de l’objet Page :

Objet ShapeCollection

L’objet ShapeCollection représente la collection d’objets de formes sur la page active dans le dessin Web affiché actuellement dans la zone de rendu du composant WebPart Visio Web Access.

Voici quelques-unes des méthodes de l’objet ShapeCollection :

Objet Shape

L’objet Shape représente une forme unique sur la page de dessin Web active. Les méthodes de l’objet Shape vous permettent d’obtenir des informations sur une page spécifique sur la page active et d’interagir avec :