Sdílet prostřednictvím


Postupy: Propojení s objektem nebo webovou stránkou pomocí ovládacího prvku Windows Forms LinkLabel

Ovládací prvek Windows Forms LinkLabel umožňuje vytvářet ve formuláři odkazy ve stylu webu. Po kliknutí na odkaz můžete změnit jeho barvu tak, aby odkaz byl navštíven. Další informace o změně barvy naleznete v tématu Postupy: Změna vzhledu ovládacího prvku Windows Forms LinkLabel.

Propojení s jiným formulářem

  1. Nastavte atribut Text na odpovídající titulek.

  2. Nastavte vlastnost LinkArea tak, aby určila, která část titulku bude označena jako odkaz. Způsob označení závisí na vlastnostech souvisejících s vzhledem popisku odkazu. Hodnota LinkArea je reprezentována objektem LinkArea obsahujícím dvě čísla, počáteční pozici znaku a počet znaků. Vlastnost LinkArea lze nastavit v okně Vlastnosti nebo v kódu podobným způsobem jako následující:

    ' 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. V obslužné rutině události LinkClicked vyvoláte metodu Show pro otevření jiného formuláře v projektu a nastavte vlastnost LinkVisited na true.

    Poznámka:

    Instanci třídy LinkLabelLinkClickedEventArgs nese odkaz na ovládací prvek LinkLabel, na který bylo kliknuto, takže není potřeba přetypovat objekt 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;
       }
    

Propojení na webovou stránku

Ovládací prvek LinkLabel lze použít také k zobrazení webové stránky s výchozím prohlížečem.

  1. Nastavte atribut Text na odpovídající titulek.

  2. Nastavte vlastnost LinkArea tak, aby určila, která část titulku bude označena jako odkaz.

  3. V obslužné rutině události LinkClicked uprostřed bloku zpracování výjimek zavolejte druhý postup, který nastaví LinkVisited vlastnost na true a použije metodu Start ke spuštění výchozího prohlížeče s adresou URL. Pokud chcete použít metodu Start, musíte přidat odkaz na obor názvů System.Diagnostics.

    Důležité

    Pokud je následující kód spuštěn v prostředí s částečnou důvěryhodností (například na sdílené jednotce), kompilátor JIT selže, když je volána metoda VisitLink. Příkaz System.Diagnostics.Process.Start způsobí selhání požadavku na propojení. Když se při volání metody VisitLink zachytí výjimka, kód níže zajistí, že pokud kompilátor JIT selže, bude chyba vstřícně zpracována.

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

Viz také