Partager via


Comment : créer un lien vers un objet ou une page Web à l'aide du contrôle LinkLabel Windows Forms

Le contrôle LinkLabel Windows Forms vous permet de créer des liens de style Web dans votre formulaire. Vous pouvez modifier la couleur d'un lien sur lequel l'utilisateur a cliqué pour indiquer que ce lien a été visité. Pour plus d'informations sur le changement de couleur, consultez Comment : modifier l'apparence du contrôle LinkLabel Windows Forms.

Liaison à un autre formulaire

Pour créer un lien vers un autre formulaire à l'aide du contrôle LinkLabel

  1. Affectez à la propriété Text une légende appropriée.

  2. Définissez la propriété LinkArea pour déterminer quelle partie de la légende doit être affichée en tant que lien. La manière dont le lien est indiqué est déterminée par les propriétés d'apparence du contrôle LinkLabel. La valeur de la propriété LinkArea est représentée par un objet LinkArea qui contient deux nombres correspondant respectivement à la position du caractère de départ et au nombre de caractères. La propriété LinkArea peut être définie dans la fenêtre Propriétés ou dans le code d'une manière semblable aux éléments suivants :

    ' In this code example, the link area has been set to begin
    ' at the first character and extend for eight characters.
    ' You may need to modify this based on the text entered in Step 1.
    LinkLabel1.LinkArea = New LinkArea(0, 8)
    
    // In this code example, the link area has been set to begin
    // at the first character and extend for eight characters.
    // You may need to modify this based on the text entered in Step 1.
    linkLabel1.LinkArea = new LinkArea(0,8);
    
    // In this code example, the link area has been set to begin
    // at the first character and extend for eight characters.
    // You may need to modify this based on the text entered in Step 1.
    linkLabel1->LinkArea = LinkArea(0,8);
    
  3. Dans le gestionnaire d'événements LinkClicked, appelez la méthode Show pour ouvrir un autre formulaire dans le projet et attribuez à la propriété LinkVisited la valeur true.

    Notes

    Une instance de la classe LinkLabelLinkClickedEventArgs possède une référence au contrôle LinkLabel sur lequel l'utilisateur a cliqué, de sorte qu'il n'est pas nécessaire d'effectuer un cast de l'objet sender .

    Protected Sub LinkLabel1_LinkClicked(ByVal Sender As System.Object, _
       ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) _
       Handles LinkLabel1.LinkClicked
       ' Show another form.
       Dim f2 As New Form()
       f2.Show
       LinkLabel1.LinkVisited = True
    End Sub
    
    protected void linkLabel1_LinkClicked(object sender, System. Windows.Forms.LinkLabelLinkClickedEventArgs e)
    {
       // Show another form.
       Form f2 = new Form();
       f2.Show();
       linkLabel1.LinkVisited = true;
    }
    
    private:
       void linkLabel1_LinkClicked(System::Object ^  sender,
          System::Windows::Forms::LinkLabelLinkClickedEventArgs ^  e)
       {
          // Show another form.
          Form ^ f2 = new Form();
          f2->Show();
          linkLabel1->LinkVisited = true;
       }
    

Liaison à une page Web

Le contrôle LinkLabel peut également être utilisé pour afficher une page Web dans le navigateur par défaut.

Pour démarrer Internet Explorer et créer un lien vers une page Web à l'aide du contrôle LinkLabel

  1. Affectez à la propriété Text une légende appropriée.

  2. Définissez la propriété LinkArea pour déterminer quelle partie de la légende doit être affichée en tant que lien.

  3. Dans le gestionnaire d'événements LinkClicked, au milieu d'un bloc de traitement des exceptions, appelez une deuxième procédure qui affecte la valeur true à la propriété LinkVisited, puis utilisez la méthode Start pour démarrer le navigateur par défaut avec une URL. Pour utiliser la méthode Start, vous devez ajouter une référence à l'espace de noms System.Diagnostics.

    Note de sécuritéNote de sécurité

    Si le code ci-dessous est exécuté dans un environnement partiellement fiable (par exemple un lecteur partagé), le compilateur JIT échoue lors de l'appel à la méthode VisitLink. L'instruction System.Diagnostics.Process.Start entraîne une demande de lien qui échoue. En interceptant l'exception lors de l'appel à la méthode VisitLink, le code ci-dessous garantit que si le compilateur JIT échoue, l'erreur est gérée correctement.

    Private Sub LinkLabel1_LinkClicked(ByVal sender As System.Object, _
       ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) _
       Handles LinkLabel1.LinkClicked
       Try
          VisitLink()
       Catch ex As Exception
          ' The error message
          MessageBox.Show("Unable to open link that was clicked.")
       End Try
    End Sub
    
    Sub VisitLink()
       ' Change the color of the link text by setting LinkVisited 
       ' to True.
       LinkLabel1.LinkVisited = True
       ' Call the Process.Start method to open the default browser 
       ' with a URL:
       System.Diagnostics.Process.Start("https://www.microsoft.com")
    End Sub
    
    private void linkLabel1_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
    {
       try
       {
          VisitLink();
       }
       catch (Exception ex )
       {
          MessageBox.Show("Unable to open link that was clicked.");
       }
    }
    
    private void VisitLink()
    {
       // Change the color of the link text by setting LinkVisited 
       // to true.
       linkLabel1.LinkVisited = true;
       //Call the Process.Start method to open the default browser 
       //with a URL:
       System.Diagnostics.Process.Start("https://www.microsoft.com");
    }
    
    private:
       void linkLabel1_LinkClicked(System::Object ^  sender,
          System::Windows::Forms::LinkLabelLinkClickedEventArgs ^  e)
       {
          try
          {
             VisitLink();
          }
          catch (Exception ^ ex)
          {
             MessageBox::Show("Unable to open link that was clicked.");
          }
       }
    private:
       void VisitLink()
       {
          // Change the color of the link text by setting LinkVisited 
          // to true.
          linkLabel1->LinkVisited = true;
          // Call the Process.Start method to open the default browser 
          // with a URL:
          System::Diagnostics::Process::Start("https://www.microsoft.com");
       }
    

Voir aussi

Tâches

Comment : modifier l'apparence du contrôle LinkLabel Windows Forms

Référence

Process.Start

Vue d'ensemble du contrôle LinkLabel (Windows Forms)

Autres ressources

LinkLabel, contrôle (Windows Forms)