Créer un lien hypertexte dans une application Silverlight
La création d’un lien hypertexte dans une application Microsoft Silverlight 1.0 diffère légèrement de la création d’un lien hypertexte dans une application Windows Presentation Foundation (WPF). À l’image de l’interactivité qui caractérise une application Silverlight 1.0, une méthode de gestionnaire d’événements est créée pour répondre à une action de l’utilisateur, puis définit la propriété location de l’objet window sur une nouvelle URL.
Pour créer un lien hypertexte dans une application Silverlight 1
Dans le document XAML principal pour le projet Silverlight 1.0, sélectionnez le contrôle Canvas dans la boîte à outils, puis dessinez un objet canevas sur la planche graphique.
Cliquez avec le bouton droit sur l’objet canevas sous Objets et chronologie, puis sélectionnez Renommer. Entrez un nouveau nom pour l’objet canevas, tel que MonLienHypertexte.
Vérifiez que l’objet MonLienHypertexte est toujours sélectionné, puis ouvrez le panneau Propriétés. Sous Propriétés communes, définissez la propriété Cursor (Curseur) sur Hand. Lorsque les utilisateurs pointent sur votre objet canevas MonLienHypertexte, le pointeur se transforme en une main.
Double-cliquez sur l’objet MonLienHypertexte pour en faire l’objet activé. Un rectangle englobant jaune apparaît autour de l’objet canevas afin de l’identifier en tant qu’objet activé. De nouveaux objets sont ajoutés en tant qu’objets enfants de l’objet activé.
Sélectionnez le contrôle TextBlock dans la boîte à outils, puis dessinez un objet bloc de texte à l’intérieur de l’objet MonLienHypertexte.
Assurez-vous que vous vous trouvez en mode d’édition de texte en appuyant sur F2. Remplacez le contenu du bloc de texte par Lien. Quitter le mode d’édition de texte en appuyant sur Échap.
Sous Fichiers dans le panneau Projet, double-cliquez sur le fichier code-behind pour votre document XAML. Par exemple, si le document XAML en cours de modification est nommé Page.xaml, double-cliquez sur le fichier Page.xaml.js. Le fichier code-behind s’ouvre à l’intérieur d’Expression Blend 2 dans un éditeur JavaScript.
Une ligne de code exemple de connexion à un gestionnaire d’événements existe déjà et ressemble à ceci :
rootElement.addEventListener("MouseLeftButtonDown", Silverlight.createDelegate(this, this.handleMouseDown));
Ajoutez le code suivant sous cette ligne de code :
if (null != this.control.content.findName("MyHyperlink")) this.control.content.findName("MyHyperlink").addEventListener("MouseLeftButtonDown", Silverlight.createDelegate(this, this.handleHyperlink));
Ce code teste la présence d’un objet nommé MyHyperlink et, si celui-ci existe, il ajoute une méthode de gestionnaire d’événements nommée handleHyperlink qui répond à l’événement MouseLeftButtonDown.
Votre fichier code-behind contient déjà un exemple de méthode de gestionnaire d’événements nommé handleMouseDown. À la fin de la méthode handleLoad, notez qu’une virgule (,) apparaît après sa dernière accolade (}), alors qu’aucune virgule n’apparaît après la dernière accolade de la méthode handleMouseDown. Cela est dû au fait que la méthode handleMouseDown est la dernière méthode déclarée. Lorsque vous ajoutez de nouvelles méthodes, vérifiez qu’une virgule apparaît après la dernière accolade pour chaque méthode à l’exception de la dernière.
Ajoutez la méthode de gestionnaire d’événements suivante, de préférence avant l’événement handleMouseDown :
handleHyperlink: function(sender, eventArgs) { window.location = "Http://www.microsoft.com"; },
Cette méthode répond à un clic utilisateur sur le bouton gauche de la souris à l’intérieur de votre objet canevas MonLienhypertexte et redirige le navigateur vers le site Web Http://www.microsoft.com.
Appuyez sur la touche F5 pour tester votre application. Cliquez sur le texte Lien pour vérifier si la redirection fonctionne.
Voir aussi
Concepts
Essayez ! créer un lien hypertexte qui ouvre une fenêtre de navigateur