LinkLabel.LinkCollection.Add Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Aggiunge un collegamento all'insieme.
Overload
Add(LinkLabel+Link) |
Consente di aggiungere all'insieme un collegamento con il valore specificato. |
Add(Int32, Int32) |
Aggiunge un collegamento all'insieme. |
Add(Int32, Int32, Object) |
Aggiunge un collegamento all'insieme con le informazioni da associare al collegamento. |
Add(LinkLabel+Link)
Consente di aggiungere all'insieme un collegamento con il valore specificato.
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
Parametri
- value
- LinkLabel.Link
Oggetto LinkLabel.Link che rappresenta il collegamento da aggiungere.
Restituisce
Indice in base zero corrispondente alla posizione del collegamento specificato dal parametro value
all'interno dell'insieme.
Si applica a
Add(Int32, Int32)
Aggiunge un collegamento all'insieme.
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
Parametri
- start
- Int32
Carattere iniziale del testo dell'etichetta in cui viene creato il collegamento.
- length
- Int32
Numero di caratteri dopo il carattere iniziale da inserire nel testo del collegamento.
Restituisce
Oggetto LinkLabel.Link che rappresenta il collegamento creato e aggiunto all'insieme.
Esempio
Nell'esempio seguente viene illustrata l'impostazione della LinkBehavior proprietà usando l'enumerazione LinkBehavior . Illustra anche l'impostazione delle proprietà , TextLinkColore LinkVisited e l'aggiunta ActiveLinkColordi elementi a un LinkLabel.LinkCollectionoggetto . Per eseguire questo esempio, incollarlo in un modulo vuoto e chiamarlo InitializeLinkLabel
dal costruttore o Load
dal metodo del modulo.
// 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
Commenti
Un LinkLabel controllo può visualizzare più collegamenti all'interno del testo del controllo. Il Add metodo consente di convertire il testo all'interno del LinkLabel controllo in un collegamento che può essere fatto clic dall'utente per eseguire attività simili a un Button controllo. Questo metodo aggiunge il collegamento creato all'oggetto LinkLabel.LinkCollectionLinkLabelper . Ad esempio, se si vuole impostare la parola "quick" nel testo dell'etichetta, "The quick brown fox", si chiama questo metodo con il start
parametro impostato sul valore di quattro (4) e il length
parametro su cinque (5). La parola "quick" passa quindi a un collegamento e il collegamento viene aggiunto alla raccolta. Se si desidera associare informazioni al collegamento, ad esempio l'URL da visualizzare o un file da aprire quando l'utente fa clic sul collegamento, usare l'altra versione del Add metodo.
Nota
Due collegamenti non possono condividere lo stesso testo. Se si crea un collegamento che usa testo già usato da un altro collegamento, viene generata un'eccezione.
Si applica a
Add(Int32, Int32, Object)
Aggiunge un collegamento all'insieme con le informazioni da associare al collegamento.
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
Parametri
- start
- Int32
Carattere iniziale del testo dell'etichetta in cui viene creato il collegamento.
- length
- Int32
Numero di caratteri dopo il carattere iniziale da inserire nel testo del collegamento.
- linkData
- Object
Oggetto contenente le informazioni da associare al collegamento.
Restituisce
Oggetto LinkLabel.Link che rappresenta il collegamento creato e aggiunto all'insieme.
Esempio
Nell'esempio di codice seguente viene creato un controllo che visualizza un LinkLabel collegamento e viene visualizzato il sito Web Microsoft nel browser predefinito quando viene fatto clic sul collegamento definito nel testo del controllo. Nell'esempio viene definito un metodo che inizializza il LinkLabel controllo e un metodo che gestirà l'evento LinkClicked del controllo. Il gestore eventi dell'evento LinkClicked usa la LinkData proprietà della LinkLabel.Link classe per determinare l'URL da visualizzare nel browser predefinito. Questo esempio richiede che si trovi all'interno di una 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
Commenti
Un LinkLabel controllo può visualizzare più collegamenti all'interno del testo del controllo. Il Add metodo consente di convertire il testo all'interno del LinkLabel controllo in un collegamento che può essere fatto clic dall'utente per eseguire attività simili a un Button controllo. Questo metodo aggiunge il collegamento creato all'oggetto LinkLabel.LinkCollectionLinkLabelper . Ad esempio, se si vuole impostare la parola "quick" nel testo dell'etichetta, "The quick brown fox", si chiama questo metodo con il start
parametro impostato sul valore di quattro (4) e il length
parametro su cinque (5). La parola "quick" passa quindi a un collegamento e il collegamento viene aggiunto alla raccolta. Questa versione del metodo Add consente di fornire informazioni aggiuntive che possono essere associate al collegamento tramite il linkData
parametro . Ad esempio, è possibile passare un String al linkData
parametro che contiene un URL da visualizzare quando viene fatto clic sul collegamento. È quindi possibile usare queste informazioni nel gestore per l'evento del LinkLabel controllo per visualizzare l'URL LinkClicked in un browser.
Nota
Due collegamenti non possono condividere lo stesso testo. Se si crea un collegamento che usa il testo già usato da un altro collegamento, viene generata un'eccezione.