LinkLabel.Link 类  
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
表示 LinkLabel 控件内的链接。
public: ref class LinkLabel::Linkpublic class LinkLabel.Link[System.ComponentModel.TypeConverter(typeof(System.Windows.Forms.LinkConverter))]
public class LinkLabel.Linktype LinkLabel.Link = class[<System.ComponentModel.TypeConverter(typeof(System.Windows.Forms.LinkConverter))>]
type LinkLabel.Link = classPublic Class LinkLabel.Link- 继承
- 
				LinkLabel.Link
- 属性
示例
以下示例演示如何使用 定义了多个LinkArea节的 LinkLabel 类在窗体上显示标签。 该示例演示如何设置 AutoSize、 LinkBehavior、 DisabledLinkColor、 LinkColor和 VisitedLinkColor 属性以自定义 的外观 LinkLabel。 第一个 LinkArea 是使用 LinkLabel.LinkArea 属性指定的。 使用 LinkLabel.LinkCollection.Add 方法将其他链接添加到 。LinkLabel 该示例 LinkClicked 通过为超链接启动 Web 浏览器,为其他链接显示 来处理 MessageBox 事件。
#using <System.dll>
#using <System.Windows.Forms.dll>
#using <System.Drawing.dll>
using namespace System;
using namespace System::Drawing;
using namespace System::Windows::Forms;
public ref class Form1: public System::Windows::Forms::Form
{
private:
   System::Windows::Forms::LinkLabel^ linkLabel1;
public:
   Form1()
   {
      
      // Create the LinkLabel.
      this->linkLabel1 = gcnew System::Windows::Forms::LinkLabel;
      
      // Configure the LinkLabel's size and location. Specify that the
      // size should be automatically determined by the content.
      this->linkLabel1->Location = System::Drawing::Point( 34, 56 );
      this->linkLabel1->Size = System::Drawing::Size( 224, 16 );
      this->linkLabel1->AutoSize = true;
      
      // Configure the appearance.
      this->linkLabel1->DisabledLinkColor = System::Drawing::Color::Red;
      this->linkLabel1->VisitedLinkColor = System::Drawing::Color::Blue;
      this->linkLabel1->LinkBehavior = System::Windows::Forms::LinkBehavior::HoverUnderline;
      this->linkLabel1->LinkColor = System::Drawing::Color::Navy;
      this->linkLabel1->TabIndex = 0;
      this->linkLabel1->TabStop = true;
      
      // Add an event handler to do something when the links are clicked.
      this->linkLabel1->LinkClicked += gcnew System::Windows::Forms::LinkLabelLinkClickedEventHandler( this, &Form1::linkLabel1_LinkClicked );
      
      // Identify what the first Link is.
      this->linkLabel1->LinkArea = System::Windows::Forms::LinkArea( 0, 8 );
      
      // Identify that the first link is visited already.
      this->linkLabel1->Links[ 0 ]->Visited = true;
      
      // Set the Text property to a String*.
      this->linkLabel1->Text = "Register Online.  Visit Microsoft.  Visit MSN.";
      
      // Create new links using the Add method of the LinkCollection class.
      // Underline the appropriate words in the LinkLabel's Text property.
      // The words 'Register', 'Microsoft', and 'MSN' will
      // all be underlined and behave as hyperlinks.
      // First check that the Text property is long enough to accommodate
      // the desired hyperlinked areas.  If it's not, don't add hyperlinks.
      if ( this->linkLabel1->Text->Length >= 45 )
      {
         this->linkLabel1->Links[ 0 ]->LinkData = "Register";
         this->linkLabel1->Links->Add( 24, 9, "www.microsoft.com" );
         this->linkLabel1->Links->Add( 42, 3, "www.msn.com" );
         this->linkLabel1->Links[ 1 ]->Enabled = false;
      }
      
      // Set up how the form should be displayed and add the controls to the form.
      this->ClientSize = System::Drawing::Size( 292, 266 );
      array<System::Windows::Forms::Control^>^temp0 = {this->linkLabel1};
      this->Controls->AddRange( temp0 );
      this->Text = "Link Label Example";
   }
private:
   void linkLabel1_LinkClicked( Object^ /*sender*/, System::Windows::Forms::LinkLabelLinkClickedEventArgs^ e )
   {
      // Determine which link was clicked within the LinkLabel.
      this->linkLabel1->Links[ linkLabel1->Links->IndexOf( e->Link ) ]->Visited = true;
      
      // Display the appropriate link based on the value of the
      // LinkData property of the Link Object*.
      String^ target = dynamic_cast<String^>(e->Link->LinkData);
      
      // If the value looks like a URL, navigate to it.
      // Otherwise, display it in a message box.
      if ( nullptr != target && target->StartsWith( "www" ) )
      {
         System::Diagnostics::Process::Start( target );
      }
      else
      {
         MessageBox::Show( "Item clicked: {0}", target );
      }
   }
};
[STAThread]
int main()
{
   Application::Run( gcnew Form1 );
}
using System;
using System.Drawing;
using System.Windows.Forms;
public class Form1 : System.Windows.Forms.Form
{
    private System.Windows.Forms.LinkLabel linkLabel1;
    
    [STAThread]
    static void Main() 
    {
        Application.Run(new Form1());
    }
    public Form1()
    {
        // Create the LinkLabel.
        this.linkLabel1 = new System.Windows.Forms.LinkLabel();
        // Configure the LinkLabel's size and location. Specify that the
        // size should be automatically determined by the content.
        this.linkLabel1.Location = new System.Drawing.Point(34, 56);
        this.linkLabel1.Size = new System.Drawing.Size(224, 16);
        this.linkLabel1.AutoSize = true;
        // Configure the appearance. 
        // Set the DisabledLinkColor so that a disabled link will show up against the form's background.
        this.linkLabel1.DisabledLinkColor = System.Drawing.Color.Red;
        this.linkLabel1.VisitedLinkColor = System.Drawing.Color.Blue;
        this.linkLabel1.LinkBehavior = System.Windows.Forms.LinkBehavior.HoverUnderline;
        this.linkLabel1.LinkColor = System.Drawing.Color.Navy;
        
        this.linkLabel1.TabIndex = 0;
        this.linkLabel1.TabStop = true;
        // Add an event handler to do something when the links are clicked.
        this.linkLabel1.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkLabel1_LinkClicked);
        // Identify what the first Link is.
        this.linkLabel1.LinkArea = new System.Windows.Forms.LinkArea(0, 8);
        // Identify that the first link is visited already.
        this.linkLabel1.Links[0].Visited = true;
        
        // Set the Text property to a string.
        this.linkLabel1.Text = "Register Online.  Visit Microsoft.  Visit MSN.";
        // Create new links using the Add method of the LinkCollection class.
        // Underline the appropriate words in the LinkLabel's Text property.
        // The words 'Register', 'Microsoft', and 'MSN' will 
        // all be underlined and behave as hyperlinks.
        // First check that the Text property is long enough to accommodate
        // the desired hyperlinked areas.  If it's not, don't add hyperlinks.
        if(this.linkLabel1.Text.Length >= 45)
        {
            this.linkLabel1.Links[0].LinkData = "Register";
            this.linkLabel1.Links.Add(24, 9, "www.microsoft.com");
            this.linkLabel1.Links.Add(42, 3, "www.msn.com");
        //  The second link is disabled and will appear as red.
            this.linkLabel1.Links[1].Enabled = false;
        }
        
        // Set up how the form should be displayed and add the controls to the form.
        this.ClientSize = new System.Drawing.Size(292, 266);
        this.Controls.AddRange(new System.Windows.Forms.Control[] {this.linkLabel1});
        this.Text = "Link Label Example";
    }
    private void linkLabel1_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
    {
        // Determine which link was clicked within the LinkLabel.
        this.linkLabel1.Links[linkLabel1.Links.IndexOf(e.Link)].Visited = true;
        // Display the appropriate link based on the value of the 
        // LinkData property of the Link object.
        string target = e.Link.LinkData as string;
        // If the value looks like a URL, navigate to it.
        // Otherwise, display it in a message box.
        if(null != target && target.StartsWith("www"))
        {
            System.Diagnostics.Process.Start(target);
        }
        else
        {    
            MessageBox.Show("Item clicked: " + target);
        }
    }
}
Imports System.Drawing
Imports System.Windows.Forms
Public NotInheritable Class Form1
    Inherits System.Windows.Forms.Form
    Friend WithEvents LinkLabel1 As System.Windows.Forms.LinkLabel
    <System.STAThread()> _
    Public Shared Sub Main()
        System.Windows.Forms.Application.Run(New Form1)
    End Sub
    Public Sub New()
        MyBase.New()
        Me.LinkLabel1 = New System.Windows.Forms.LinkLabel
        ' Configure the LinkLabel's size and location. Specify that the
        ' size should be automatically determined by the content.
        Me.linkLabel1.Location = New System.Drawing.Point(34, 56) 
        Me.linkLabel1.Size = New System.Drawing.Size(224, 16) 
        Me.linkLabel1.AutoSize = True 
        ' Configure the appearance.
        ' Set the DisabledLinkColor so that a disabled link will show up against the form's background.
        Me.linkLabel1.DisabledLinkColor = System.Drawing.Color.Red 
        Me.linkLabel1.VisitedLinkColor = System.Drawing.Color.Blue 
        Me.linkLabel1.LinkBehavior = System.Windows.Forms.LinkBehavior.HoverUnderline 
        Me.linkLabel1.LinkColor = System.Drawing.Color.Navy 
        
        Me.linkLabel1.TabIndex = 0 
        Me.linkLabel1.TabStop = True 
        
        ' Identify what the first Link is.
        Me.linkLabel1.LinkArea = New System.Windows.Forms.LinkArea(0, 8)
        ' Identify that the first link is visited already.
        Me.linkLabel1.Links(0).Visited = true
        
        ' Set the Text property to a string.
        Me.linkLabel1.Text = "Register Online.  Visit Microsoft.  Visit MSN."
        ' Create new links using the Add method of the LinkCollection class.
        ' Underline the appropriate words in the LinkLabel's Text property.
        ' The words 'Register', 'Microsoft', and 'MSN' will 
        ' all be underlined and behave as hyperlinks.
        ' First check that the Text property is long enough to accommodate
        ' the desired hyperlinked areas.  If it's not, don't add hyperlinks.
        If Me.LinkLabel1.Text.Length >= 45 Then
            Me.LinkLabel1.Links(0).LinkData = "Register"
            Me.LinkLabel1.Links.Add(24, 9, "www.microsoft.com")
            Me.LinkLabel1.Links.Add(42, 3, "www.msn.com")
            ' The second link is disabled and will appear as red.
            Me.linkLabel1.Links(1).Enabled = False
        End If
        ' Set up how the form should be displayed and adds the controls to the form.
        Me.ClientSize = New System.Drawing.Size(292, 266)
        Me.Controls.AddRange(New System.Windows.Forms.Control() {Me.LinkLabel1})
        Me.Text = "Link Label Example"
    End Sub
    Private Sub linkLabel1_LinkClicked(ByVal sender As Object, _
                ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles LinkLabel1.LinkClicked
        ' Determine which link was clicked within the LinkLabel.
        Me.LinkLabel1.Links(LinkLabel1.Links.IndexOf(e.Link)).Visited = True
        ' Displays the appropriate link based on the value of the LinkData property of the Link object.
        Dim target As String = CType(e.Link.LinkData, String)
        ' If the value looks like a URL, navigate to it.
        ' Otherwise, display it in a message box.
        If (target IsNot Nothing) AndAlso (target.StartsWith("www")) Then
            System.Diagnostics.Process.Start(target)
        Else
            MessageBox.Show(("Item clicked: " + target))
        End If
    End Sub
End Class
注解
类 LinkLabel.Link 定义控件中 LinkLabel 链接的属性。 可以使用这些属性向控件的事件LinkLabel提供数据LinkClicked,以在控件中单击链接时执行任务。 属性 LinkData 使你能够定义事件可用于在浏览器中显示 URL 或打开文件的信息 LinkClicked 。
除了与链接相关的信息外,类的属性 LinkLabel.Link 还有助于定义 的文本 LinkLabel.Link 及其显示状态。 Start和 Length 属性定义控件文本中要显示为链接的文本LinkLabel的位置和长度。 属性 Enabled 允许您将链接显示为禁用的链接,并且 Visited 属性可以提醒用户他们已访问的当前实例 LinkLabel中的指定链接。
可以在单个 LinkLabel 控件中显示多个链接。 每个都 LinkLabel.Link 添加到 LinkLabel.LinkCollection 与 控件关联的 中 LinkLabel 。 若要获取控件中 LinkLabel 定义的链接的集合,请使用 LinkLabel.Links 属性。
构造函数
| LinkLabel.Link() | 初始化 LinkLabel.Link 类的新实例。 | 
| LinkLabel.Link(Int32, Int32) | 使用 LinkLabel.Link 内指定的起始位置和起始位置之后的字符数初始化 LinkLabel 类的新实例。 | 
| LinkLabel.Link(Int32, Int32, Object) | 使用 LinkLabel.Link 内指定的起始位置、起始位置之后的字符数以及与链接关联的数据初始化 LinkLabel 类的新实例。 | 
属性
| Description | 获取或设置链接的文本说明。 | 
| Enabled | 获取或设置一个值,该值指示是否启用链接。 | 
| Length | 获取或设置链接文本中的字符数。 | 
| LinkData | 获取或设置与链接关联的数据。 | 
| Name | 获取或设置 LinkLabel.Link 的名称。 | 
| Start | 获取或设置 LinkLabel 的文本内链接的起始位置。 | 
| Tag | 获取或设置包含有关 LinkLabel.Link 的数据的对象。 | 
| Visited | 获取或设置一个值,该值指示用户是否已访问过该链接。 | 
方法
| Equals(Object) | 确定指定对象是否等于当前对象。(继承自 Object) | 
| GetHashCode() | 作为默认哈希函数。(继承自 Object) | 
| GetType() | 获取当前实例的 Type。(继承自 Object) | 
| MemberwiseClone() | 创建当前 Object 的浅表副本。(继承自 Object) | 
| ToString() | 返回表示当前对象的字符串。(继承自 Object) |