Partager via


LinkLabel.LinkCollection.Add Méthode

Définition

Ajoute un lien à la collection.

Surcharges

Add(LinkLabel+Link)

Ajoute un lien avec la valeur spécifiée à la collection.

Add(Int32, Int32)

Ajoute un lien à la collection.

Add(Int32, Int32, Object)

Ajoute un lien à la collection avec les informations associées au lien.

Add(LinkLabel+Link)

Ajoute un lien avec la valeur spécifiée à la collection.

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

Paramètres

value
LinkLabel.Link

LinkLabel.Link représentant le lien à ajouter.

Retours

Index de base zéro où le lien spécifié par le paramètre value est situé dans la collection.

S’applique à

Add(Int32, Int32)

Ajoute un lien à la collection.

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

Paramètres

start
Int32

Caractère de début dans le texte de l'étiquette dans lequel le lien est créé.

length
Int32

Nombre de caractères, après le caractère de début, à inclure dans le texte de lien.

Retours

LinkLabel.Link représentant le lien créé et ajouté à la collection.

Exemples

L’exemple suivant illustre la définition de la propriété à l’aide LinkBehavior de l’énumération LinkBehavior . Il montre également la définition des ActiveLinkColorpropriétés , LinkColorText et et LinkVisited l’ajout d’éléments à un LinkLabel.LinkCollection. Pour exécuter cet exemple, collez-le dans un formulaire vide et appelez InitializeLinkLabel à partir du constructeur ou Load de la méthode du formulaire.

   // 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

Remarques

Un LinkLabel contrôle peut afficher plusieurs liens dans le texte du contrôle. La Add méthode vous permet de convertir du texte dans le LinkLabel contrôle en un lien sur lequel l’utilisateur peut cliquer pour effectuer des tâches similaires à un Button contrôle. Cette méthode ajoute le lien créé à pour LinkLabel.LinkCollection le LinkLabel. Par exemple, si vous souhaitez définir le mot « quick » dans le texte de l’étiquette, « Le renard brun rapide », vous appelez cette méthode avec le start paramètre défini sur la valeur de quatre (4) et le length paramètre sur cinq (5). Le mot « quick » devient alors un lien et le lien est ajouté à la collection. Si vous souhaitez associer des informations au lien, telles que l’URL à afficher ou un fichier à ouvrir lorsque l’utilisateur clique sur le lien, utilisez l’autre version de la Add méthode.

Notes

Deux liens ne peuvent pas partager le même texte. Si vous créez un lien qui utilise du texte déjà utilisé par un autre lien, une exception est levée.

S’applique à

Add(Int32, Int32, Object)

Ajoute un lien à la collection avec les informations associées au lien.

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

Paramètres

start
Int32

Caractère de début dans le texte de l'étiquette dans lequel le lien est créé.

length
Int32

Nombre de caractères, après le caractère de début, à inclure dans le texte de lien.

linkData
Object

Objet contenant les informations à associer au lien.

Retours

LinkLabel.Link représentant le lien créé et ajouté à la collection.

Exemples

L’exemple de code suivant crée un LinkLabel contrôle qui affiche un lien et affiche le site Web Microsoft dans le navigateur par défaut lorsque l’utilisateur clique sur le lien défini dans le texte du contrôle. L’exemple définit une méthode qui initialise le LinkLabel contrôle, ainsi qu’une méthode qui gère l’événement LinkClicked du contrôle. Le gestionnaire d’événements de l’événement LinkClicked utilise la LinkData propriété de la LinkLabel.Link classe pour déterminer l’URL à afficher dans le navigateur par défaut. Cet exemple nécessite qu’il se trouve dans une Form classe .

   // 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

Remarques

Un LinkLabel contrôle peut afficher plusieurs liens dans le texte du contrôle. La Add méthode vous permet de convertir du texte dans le LinkLabel contrôle en un lien sur lequel l’utilisateur peut cliquer pour effectuer des tâches similaires à un Button contrôle. Cette méthode ajoute le lien créé à pour LinkLabel.LinkCollection le LinkLabel. Par exemple, si vous souhaitez définir le mot « quick » dans le texte de l’étiquette, « Le renard brun rapide », vous appelez cette méthode avec le start paramètre défini sur la valeur de quatre (4) et le length paramètre sur cinq (5). Le mot « quick » devient alors un lien et le lien est ajouté à la collection. Cette version de la méthode Add vous permet de fournir des informations supplémentaires qui peuvent être associées au lien via le linkData paramètre . Par exemple, vous pouvez passer un String au linkData paramètre qui contient une URL à afficher lorsque vous cliquez sur le lien. Vous pouvez ensuite utiliser ces informations dans votre gestionnaire pour l’événement LinkClicked du LinkLabel contrôle afin d’afficher l’URL dans un navigateur.

Notes

Deux liens ne peuvent pas partager le même texte. Si vous créez un lien qui utilise du texte déjà utilisé par un autre lien, une exception est levée.

S’applique à