LinkLabel.LinkCollection.Add Metod

Definition

Lägger till en länk till samlingen.

Överlagringar

Name Description
Add(LinkLabel+Link)

Lägger till en länk med det angivna värdet i samlingen.

Add(Int32, Int32)

Lägger till en länk till samlingen.

Add(Int32, Int32, Object)

Lägger till en länk till samlingen med information som ska associeras med länken.

Add(LinkLabel+Link)

Källa:
LinkLabel.LinkCollection.cs
Källa:
LinkLabel.LinkCollection.cs
Källa:
LinkLabel.LinkCollection.cs
Källa:
LinkLabel.LinkCollection.cs
Källa:
LinkLabel.LinkCollection.cs

Lägger till en länk med det angivna värdet i samlingen.

public:
 int Add(System::Windows::Forms::LinkLabel::Link ^ value);
public int Add(System.Windows.Forms.LinkLabel.Link value);
member this.Add : System.Windows.Forms.LinkLabel.Link -> int
Public Function Add (value As LinkLabel.Link) As Integer

Parametrar

value
LinkLabel.Link

En LinkLabel.Link som representerar länken som ska läggas till.

Returer

Det nollbaserade indexet där länken som anges av parametern value finns i samlingen.

Gäller för

Add(Int32, Int32)

Källa:
LinkLabel.LinkCollection.cs
Källa:
LinkLabel.LinkCollection.cs
Källa:
LinkLabel.LinkCollection.cs
Källa:
LinkLabel.LinkCollection.cs
Källa:
LinkLabel.LinkCollection.cs

Lägger till en länk till samlingen.

public:
 System::Windows::Forms::LinkLabel::Link ^ Add(int start, int length);
public System.Windows.Forms.LinkLabel.Link Add(int start, int length);
member this.Add : int * int -> System.Windows.Forms.LinkLabel.Link
Public Function Add (start As Integer, length As Integer) As LinkLabel.Link

Parametrar

start
Int32

Starttecknet i texten i etiketten där länken skapas.

length
Int32

Antalet tecken efter starttecknet som ska inkluderas i länktexten.

Returer

En LinkLabel.Link som representerar länken som skapades och lades till i samlingen.

Exempel

I följande exempel visas hur du anger LinkBehavior egenskapen med uppräkningen LinkBehavior . Den visar också hur du ställer in ActiveLinkColoregenskaperna , LinkColorText och LinkVisited och lägger till objekt i en LinkLabel.LinkCollection. Om du vill köra det här exemplet klistrar du in det i ett tomt formulär och anropar InitializeLinkLabel från formulärets konstruktor eller Load metod.

   // Declare the LinkLabel object.
internal:
   System::Windows::Forms::LinkLabel^ LinkLabel1;

   // Declare keywords array to identify links
   array<String^>^keywords;

private:
   void InitializeLinkLabel()
   {
      this->LinkLabel1 = gcnew System::Windows::Forms::LinkLabel;
      this->LinkLabel1->Links->Clear();
      // Set the location, name and size.
      this->LinkLabel1->Location = System::Drawing::Point( 10, 20 );
      this->LinkLabel1->Name = "CompanyLinks";
      this->LinkLabel1->Size = System::Drawing::Size( 104, 150 );
      
      // Set the LinkBehavior property to show underline when mouse
      // hovers over the links.
      this->LinkLabel1->LinkBehavior = System::Windows::Forms::LinkBehavior::HoverUnderline;
      String^ textString = "For more information see our"
      " company website or the research page at Contoso Ltd. ";
      
      // Set the text property.
      this->LinkLabel1->Text = textString;
      
      // Set the color of the links to black, unless the mouse
      // is hovering over a link.
      this->LinkLabel1->LinkColor = System::Drawing::Color::Black;
      this->LinkLabel1->ActiveLinkColor = System::Drawing::Color::Blue;
      
      // Associate the event-handling method with the LinkClicked
      // event.
      this->LinkLabel1->LinkClicked += gcnew LinkLabelLinkClickedEventHandler( this, &Form1::LinkLabel1_LinkClicked );
      
      // Add links to the LinkCollection using starting index and
      // length of keywords.
      array<String^>^temp0 = {"company","research"};
      keywords = temp0;
      System::Collections::IEnumerator^ myEnum = keywords->GetEnumerator();
      while ( myEnum->MoveNext() )
      {
         String^ keyword = safe_cast<String^>(myEnum->Current);
         this->LinkLabel1->Links->Add( textString->IndexOf( keyword ), keyword->Length );
      }

      
      // Add the label to the form.
      this->Controls->Add( this->LinkLabel1 );
   }

   void LinkLabel1_LinkClicked( Object^ /*sender*/, LinkLabelLinkClickedEventArgs^ e )
   {
      String^ url = "";
      
      // Determine which link was clicked and set the appropriate url.
      switch ( LinkLabel1->Links->IndexOf( e->Link ) )
      {
         case 0:
            url = "www.microsoft.com";
            break;

         case 1:
            url = "www.contoso.com/research";
            break;
      }
      
      // Set the visited property to True. This will change
      // the color of the link.
      e->Link->Visited = true;
      
      // Open Internet Explorer to the correct url.
      System::Diagnostics::Process::Start( "IExplore.exe", url );
   }

// Declare the LinkLabel object.
internal System.Windows.Forms.LinkLabel LinkLabel1;

// Declare keywords array to identify links
string[] keywords;

private void InitializeLinkLabel()
{
    this.LinkLabel1 = new System.Windows.Forms.LinkLabel();
            this.LinkLabel1.Links.Clear();

    // Set the location, name and size.
    this.LinkLabel1.Location = new System.Drawing.Point(10, 20);
    this.LinkLabel1.Name = "CompanyLinks";
    this.LinkLabel1.Size = new System.Drawing.Size(104, 150);

    // Set the LinkBehavior property to show underline when mouse
    // hovers over the links.
    this.LinkLabel1.LinkBehavior = System.Windows.Forms.LinkBehavior.HoverUnderline;
    string textString = "For more information see our" +
        " company website or the research page at Contoso Ltd. ";

    // Set the text property.
    this.LinkLabel1.Text = textString;

    // Set the color of the links to black, unless the mouse
    // is hovering over a link.
    this.LinkLabel1.LinkColor = System.Drawing.Color.Black;
    this.LinkLabel1.ActiveLinkColor = System.Drawing.Color.Blue;

    // Associate the event-handling method with the LinkClicked
    // event.
    this.LinkLabel1.LinkClicked += 
        new LinkLabelLinkClickedEventHandler(LinkLabel1_LinkClicked);

    // Add links to the LinkCollection using starting index and
    // length of keywords.
    keywords = new string[]{"company", "research"};
    foreach ( string keyword in keywords )
    {
        this.LinkLabel1.Links.Add(textString.IndexOf(keyword), keyword.Length);
    }

    // Add the label to the form.
    this.Controls.Add(this.LinkLabel1);
}

private void LinkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{

    string url = "";

    // Determine which link was clicked and set the appropriate url.
    switch(LinkLabel1.Links.IndexOf(e.Link))
    {
        case 0:
            url = "www.microsoft.com";

            break;
        case 1:
            url = "www.contoso.com/research";
            break;
    }

    // Set the visited property to True. This will change
    // the color of the link.
    e.Link.Visited = true;

    // Open Internet Explorer to the correct url.
    System.Diagnostics.Process.Start("IExplore.exe", url);
}

' Declare the LinkLabel object.
Friend WithEvents LinkLabel1 As System.Windows.Forms.LinkLabel

' Declare keywords array to identify links
Dim keywords() As String

Private Sub InitializeLinkLabel()
    Me.LinkLabel1 = New System.Windows.Forms.LinkLabel
    Me.LinkLabel1.Links.Clear()
    ' Set the location, name and size.
    Me.LinkLabel1.Location = New System.Drawing.Point(10, 20)
    Me.LinkLabel1.Name = "CompanyLinks"
    Me.LinkLabel1.Size = New System.Drawing.Size(104, 150)

    ' Set the LinkBehavior property to show underline when mouse
    ' hovers over the links.
    Me.LinkLabel1.LinkBehavior = _
        System.Windows.Forms.LinkBehavior.HoverUnderline
    Dim textString As String = "For more information see our" & _
       " company website or the research page at Contoso Ltd. "

    ' Set the text property.
    Me.LinkLabel1.Text = textString

    ' Set the color of the links to black, unless the mouse
    ' is hovering over a link.
    Me.LinkLabel1.LinkColor = System.Drawing.Color.Black
    Me.LinkLabel1.ActiveLinkColor = System.Drawing.Color.Blue

    ' Add links to the LinkCollection using starting index and
    ' length of keywords.
    keywords = New String() {"company", "research"}
    Dim keyword As String
    For Each keyword In keywords
        Me.LinkLabel1.Links.Add(textString.IndexOf(keyword), keyword.Length)
    Next

    ' Add the label to the form.
    Me.Controls.Add(Me.LinkLabel1)
End Sub

Private Sub LinkLabel1_LinkClicked(ByVal sender As Object, _
    ByVal e As LinkLabelLinkClickedEventArgs) _
    Handles LinkLabel1.LinkClicked

    Dim url As String

    ' Determine which link was clicked and set the appropriate url.
    Select Case LinkLabel1.Links.IndexOf(e.Link)
        Case 0
            url = "www.microsoft.com"

        Case 1
            url = "www.contoso.com/research"
    End Select

    ' Set the visited property to True. This will change
    ' the color of the link.
    e.Link.Visited = True

    ' Open Internet Explorer to the correct url.
    System.Diagnostics.Process.Start("IExplore.exe", url)
End Sub

Kommentarer

En LinkLabel kontroll kan visa flera länkar i kontrollens text. Med Add metoden kan du konvertera text i LinkLabel kontrollen till en länk som användaren kan klicka på för att utföra uppgifter som liknar en Button kontroll. Den här metoden lägger till länken som skapas till LinkLabel.LinkCollection för .LinkLabel Om du till exempel vill ange ordet "snabb" i etiketttexten "Den snabba bruna räven" anropar du den här metoden med parametern start inställd på värdet fyra (4) och parametern length till fem (5). Ordet "snabb" ändras sedan till en länk och länken läggs till i samlingen. Om du vill associera information med länken, till exempel den URL som ska visas eller en fil som ska öppnas när användaren klickar på länken, använder du den andra versionen av Add metoden.

Note

Två länkar kan inte dela samma text. Om du skapar en länk som använder text som redan används av en annan länk genereras ett undantag.

Gäller för

Add(Int32, Int32, Object)

Källa:
LinkLabel.LinkCollection.cs
Källa:
LinkLabel.LinkCollection.cs
Källa:
LinkLabel.LinkCollection.cs
Källa:
LinkLabel.LinkCollection.cs
Källa:
LinkLabel.LinkCollection.cs

Lägger till en länk till samlingen med information som ska associeras med länken.

public:
 System::Windows::Forms::LinkLabel::Link ^ Add(int start, int length, System::Object ^ linkData);
public System.Windows.Forms.LinkLabel.Link Add(int start, int length, object linkData);
public System.Windows.Forms.LinkLabel.Link Add(int start, int length, object? linkData);
member this.Add : int * int * obj -> System.Windows.Forms.LinkLabel.Link
Public Function Add (start As Integer, length As Integer, linkData As Object) As LinkLabel.Link

Parametrar

start
Int32

Starttecknet i texten i etiketten där länken skapas.

length
Int32

Antalet tecken efter starttecknet som ska inkluderas i länktexten.

linkData
Object

Objektet som innehåller den information som ska associeras med länken.

Returer

En LinkLabel.Link som representerar länken som skapades och lades till i samlingen.

Exempel

I följande kodexempel skapas en LinkLabel-kontroll som visar en länk och visar Microsoft webbplats i standardwebbläsaren när länken som definierats i kontrollens text klickas. Exemplet definierar en metod som initierar LinkLabel kontrollen samt en metod som hanterar LinkClicked kontrollens händelse. Händelsehanteraren för LinkClicked händelsen använder LinkData egenskapen LinkLabel.Link för klassen för att fastställa vilken URL som ska visas i standardwebbläsaren. Det här exemplet kräver att det finns i en Form klass.

   // Create a new LinkLabel control.
private:
   LinkLabel^ linkLabel1;

public:
   void InitializeMyLinkLabel()
   {
      // Set the control to autosize based on the text content.
      linkLabel1->AutoSize = true;

      // Position and size the control on the form.
      linkLabel1->Location = System::Drawing::Point( 8, 16 );
      linkLabel1->Size = System::Drawing::Size( 135, 13 );

      // Set the text to display in the label.
      linkLabel1->Text = "Click here to get more info.";

      // Create a new link using the Add method of the LinkCollection class.
      linkLabel1->Links->Add( 6, 4, "www.microsoft.com" );

      // Create an event handler for the LinkClicked event.
      linkLabel1->LinkClicked += gcnew System::Windows::Forms::LinkLabelLinkClickedEventHandler( this, &Form1::linkLabel1_LinkClicked );

      // Add the control to the form.
      this->Controls->Add( linkLabel1 );
   }

private:
   void linkLabel1_LinkClicked( Object^ /*sender*/, System::Windows::Forms::LinkLabelLinkClickedEventArgs^ e )
   {
      // Determine which link was clicked within the LinkLabel.
      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.
      System::Diagnostics::Process::Start( e->Link->LinkData->ToString() );
   }
// Create a new LinkLabel control.
  private LinkLabel linkLabel1 = new LinkLabel();
  
  public void InitializeMyLinkLabel()
  {
      
      // Set the control to autosize based on the text content.
      linkLabel1.AutoSize = true;
      // Position and size the control on the form.
      linkLabel1.Location = new System.Drawing.Point(8,16);
      linkLabel1.Size = new System.Drawing.Size(135,13);
      // Set the text to display in the label.
      linkLabel1.Text = "Click here to get more info.";

      // Create a new link using the Add method of the LinkCollection class.
      linkLabel1.Links.Add(6,4,"www.microsoft.com");

      // Create an event handler for the LinkClicked event.
      linkLabel1.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkLabel1_LinkClicked);

      // Add the control to the form.
      this.Controls.Add(linkLabel1);
  }

  private void linkLabel1_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
  {
      // Determine which link was clicked within the LinkLabel.
      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.
      System.Diagnostics.Process.Start(e.Link.LinkData.ToString());
  }
' Create a new LinkLabel control.
Private linkLabel1 As New LinkLabel()


Public Sub InitializeMyLinkLabel()
    
    ' Set the control to autosize based on the text content.
    linkLabel1.AutoSize = True
    ' Position and size the control on the form.
    linkLabel1.Location = New System.Drawing.Point(8, 16)
    linkLabel1.Size = New System.Drawing.Size(135, 13)
    ' Set the text to display in the label.
    linkLabel1.Text = "Click here to get more info."
    
    ' Create a new link using the Add method of the LinkCollection class.
    linkLabel1.Links.Add(6, 4, "www.microsoft.com")
    
    ' Create an event handler for the LinkClicked event.
    AddHandler linkLabel1.LinkClicked, AddressOf Me.linkLabel1_LinkClicked
    
    ' Add the control to the form.
    Me.Controls.Add(linkLabel1)
End Sub


Private Sub linkLabel1_LinkClicked(sender As Object, e As System.Windows.Forms.LinkLabelLinkClickedEventArgs)
    ' Determine which link was clicked within the LinkLabel.
    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.
    System.Diagnostics.Process.Start(e.Link.LinkData.ToString())
End Sub

Kommentarer

En LinkLabel kontroll kan visa flera länkar i kontrollens text. Med Add metoden kan du konvertera text i LinkLabel kontrollen till en länk som användaren kan klicka på för att utföra uppgifter som liknar en Button kontroll. Den här metoden lägger till länken som skapas till LinkLabel.LinkCollection för .LinkLabel Om du till exempel vill ange ordet "snabb" i etiketttexten "Den snabba bruna räven" anropar du den här metoden med parametern start inställd på värdet fyra (4) och parametern length till fem (5). Ordet "snabb" ändras sedan till en länk och länken läggs till i samlingen. Med den här versionen av metoden Lägg till kan du ange ytterligare information som kan associeras med länken via parametern linkData . Du kan till exempel skicka en String till parametern linkData som innehåller en URL som ska visas när länken klickas. Du kan sedan använda den här informationen i hanteraren för kontrollens LinkClicked händelse för LinkLabel att visa URL:en i en webbläsare.

Note

Två länkar kan inte dela samma text. Om du skapar en länk som använder text som redan används av en annan länk genereras ett undantag.

Gäller för