Nasıl yapılır: Windows Forms LinkLabel Denetimi ile Bir Nesneye veya Web Sayfasına Bağlama

Windows Forms LinkLabel denetimi, formunuzda Web stili bağlantılar oluşturmanıza olanak sağlar. Bağlantıya tıklandığında, bağlantının ziyaret edildiğini göstermek için rengini değiştirebilirsiniz. rengi değiştirme hakkında daha fazla bilgi için bkz. nasıl yapılır: Windows Forms LinkLabel denetiminin görünümünü değiştirme.

Başka bir forma bağlama

  1. TextÖzelliği uygun bir başlık olarak ayarlayın.

  2. LinkAreaBaşlığın hangi kısmının bağlantı olarak belirtileyeceğini belirleyen özelliği ayarlayın. Nasıl belirtildiği, bağlantı etiketinin görünümle ilgili özelliklerine bağlıdır. LinkAreaDeğer LinkArea iki sayı içeren bir nesne tarafından temsil edilir, başlangıç karakterinin konumunu ve karakter sayısını. LinkAreaÖzelliği Özellikler penceresi veya kod içinde aşağıdakine benzer bir şekilde ayarlanabilir:

    ' 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. LinkClickedOlay işleyicisinde, Show projede başka bir form açmak için yöntemini çağırın ve LinkVisited özelliğini olarak ayarlayın true .

    Not

    Sınıfının bir örneği LinkLabelLinkClickedEventArgsLinkLabel tıklanan denetime bir başvuru taşır, bu nedenle nesneyi atama gerekmez 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;
       }
    

Bir Web sayfasına bağlanma

LinkLabelDenetim, varsayılan tarayıcıyla bir Web sayfası göstermek için de kullanılabilir.

  1. TextÖzelliği uygun bir başlık olarak ayarlayın.

  2. LinkAreaBaşlığın hangi kısmının bağlantı olarak belirtileyeceğini belirleyen özelliği ayarlayın.

  3. LinkClickedOlay işleyicisinde, bir özel durum işleme bloğunun ortasında, özelliğini olarak ayarlayan ikinci bir yordam çağırın LinkVisitedtrue ve Start varsayılan tarayıcıyı bir URL ile başlatmak için yöntemini kullanır. Yöntemi kullanmak için, Start ad alanına bir başvuru eklemeniz gerekir System.Diagnostics .

    Önemli

    Aşağıdaki kod, kısmi güven ortamında (örneğin, paylaşılan bir sürücüde) çalışıyorsa, yöntemi çağrıldığında JıT derleyicisi başarısız olur VisitLink . System.Diagnostics.Process.Startİfade, başarısız olan bir bağlantı talebine neden olur. Yöntemi çağrıldığında özel durum yakalanarak VisitLink , aşağıdaki kod JIT derleyicisi başarısız olursa hatanın düzgün şekilde işleneceğini sağlar.

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

Ayrıca bkz.