Dela via


Anvisningar: Länka till ett objekt eller en webbsida med Windows Forms LinkLabel-kontrollen

Med kontrollen Windows Forms LinkLabel kan du skapa länkar i webbformat i formuläret. När du klickar på länken kan du ändra dess färg för att visa att länken har besökts. Mer information om hur du ändrar färg finns i How to: Change the Appearance of the Windows Forms LinkLabel Control.

Länka till ett annat formulär

  1. Ange egenskapen Text till en lämplig bildtext.

  2. Ange egenskapen LinkArea för att avgöra vilken del av beskrivningen som ska anges som en länk. Hur det anges beror på de utseenderelaterade egenskaperna för länketiketten. Värdet LinkArea representeras av ett LinkArea objekt som innehåller två tal, startteckenpositionen och antalet tecken. Egenskapen LinkArea kan anges i fönstret Egenskaper eller i kod på ett sätt som liknar följande:

    ' 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. I LinkClicked-händelsehanteraren anropar du metoden Show för att öppna ett annat formulär i projektet och anger egenskapen LinkVisited till true.

    Anmärkning

    En instans av LinkLabelLinkClickedEventArgs-klassen innehåller en referens till LinkLabel-kontrollen som blev klickad, så det finns inget behov av att omvandla sender-objektet.

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

Länka till en webbsida

Den LinkLabel kontrollen kan också användas för att visa en webbsida med standardwebbläsaren.

  1. Ange egenskapen Text till en lämplig bildtext.

  2. Ange egenskapen LinkArea för att avgöra vilken del av beskrivningen som ska anges som en länk.

  3. I LinkClicked händelsehanteraren, mitt i ett undantagshanteringsblock, anropar du en andra procedur som anger egenskapen LinkVisited till true och använder metoden Start för att starta standardwebbläsaren med en URL. Om du vill använda metoden Start måste du lägga till en referens till System.Diagnostics namnområdet.

    Viktigt!

    Om koden nedan körs i en partiell förtroendemiljö (till exempel på en delad enhet) misslyckas JIT-kompilatorn när metoden VisitLink anropas. System.Diagnostics.Process.Start-instruktionen orsakar ett länkkrav som inte uppfylls. Genom att fånga undantaget när VisitLink-metoden anropas ser koden nedan till att om JIT-kompilatorn misslyckas hanteras felet korrekt.

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

Se även