Delen via


Procedure: Een koppeling maken naar een object of webpagina met het Besturingselement Windows Forms LinkLabel

Met het besturingselement Windows Forms LinkLabel kunt u koppelingen in de webstijl in uw formulier maken. Wanneer op de koppeling wordt geklikt, kunt u de kleur wijzigen om aan te geven dat de koppeling is bezocht. Zie voor meer informatie over het wijzigen van de kleur Hoe u het uiterlijk van het besturingselement Windows Forms LinkLabel kunt wijzigen.

Koppelen aan een ander formulier

  1. Stel de eigenschap Text in met een geschikt bijschrift.

  2. Stel de eigenschap LinkArea in om te bepalen welk deel van het bijschrift wordt aangegeven als koppeling. Hoe dit wordt aangegeven, is afhankelijk van de eigenschappen die betrekking hebben op het uiterlijk van het koppelingslabel. De LinkArea waarde wordt vertegenwoordigd door een LinkArea object met twee getallen, de positie van het beginteken en het aantal tekens. De eigenschap LinkArea kan worden ingesteld in het venster Eigenschappen of in code op een manier die vergelijkbaar is met het volgende:

    ' 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. Roep in de LinkClicked gebeurtenishandler de Show methode aan om een ander formulier in het project te openen en stel de eigenschap LinkVisited in op true.

    Notitie

    Een exemplaar van de klasse LinkLabelLinkClickedEventArgs bevat een verwijzing naar het LinkLabel besturingselement waarop is geklikt, zodat het sender-object niet hoeft te worden gecast.

    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;
       }
    

Koppelen aan een webpagina

De besturing LinkLabel kan ook worden gebruikt om een webpagina met de standaardbrowser weer te geven.

  1. Stel de eigenschap Text in op een geschikt bijschrift.

  2. Stel de eigenschap LinkArea in om te bepalen welk deel van het bijschrift wordt aangegeven als koppeling.

  3. Roep in de LinkClicked gebeurtenis-handler midden in een uitzonderingsafhandelingsblok een tweede procedure aan waarmee de eigenschap LinkVisited wordt ingesteld op true en de methode Start gebruikt om de standaardbrowser met een URL te starten. Als u de methode Start wilt gebruiken, moet u een verwijzing toevoegen naar de System.Diagnostics naamruimte.

    Belangrijk

    Als de onderstaande code wordt uitgevoerd in een gedeeltelijke vertrouwensomgeving (zoals op een gedeeld station), mislukt de JIT-compiler wanneer de methode VisitLink wordt aangeroepen. De System.Diagnostics.Process.Start-instructie veroorzaakt een koppelingsvraag die mislukt. Door de uitzondering te ondervangen wanneer de methode VisitLink wordt aangeroepen, zorgt de onderstaande code ervoor dat de fout correct wordt afgehandeld als de JIT-compiler mislukt.

    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("http://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("http://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("http://www.microsoft.com");
       }
    

Zie ook