Procedura: Collegare a un oggetto o a una pagina Web con il controllo LinkLabel di Windows Form
Il controllo LinkLabel Windows Form consente di creare collegamenti in stile Web nel modulo. Quando si fa clic sul collegamento, è possibile modificarne il colore per indicare che il collegamento è stato visitato. Per ulteriori informazioni sulla modifica del colore, vedere Procedura: Modificare l'aspetto del controllo LinkLabel di Windows Forms.
Collegamento a un altro modulo
Per collegarsi a un altro modulo con un controllo LinkLabel
Impostare la proprietà Text su una didascalia appropriata.
Impostare la proprietà LinkArea per determinare quale parte della didascalia verrà indicata come collegamento. La modalità di indicazione dipende dalle proprietà correlate all'aspetto dell'etichetta di collegamento. Il valore LinkArea è rappresentato da un oggetto LinkArea contenente due numeri, la posizione del carattere iniziale e il numero di caratteri. La proprietà LinkArea può essere impostata nella finestra Proprietà o nel codice in modo simile al seguente:
' 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);
Nel gestore eventi LinkClicked, richiama il metodo Show per aprire un altro modulo nel progetto e imposta la proprietà LinkVisited su
true
.Nota
Un'istanza della classe LinkLabelLinkClickedEventArgs contiene un riferimento al controllo LinkLabel cliccato, quindi non è necessario eseguire il cast dell'oggetto
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; }
Collegamento a una pagina Web
Il controllo LinkLabel può essere usato anche per visualizzare una pagina Web con il browser predefinito.
Per avviare Internet Explorer e collegarsi a una pagina Web con un controllo LinkLabel
Impostare la proprietà Text su una didascalia appropriata.
Impostare la proprietà LinkArea per determinare quale parte della didascalia verrà indicata come collegamento.
Nel gestore eventi LinkClicked, in mezzo a un blocco di gestione delle eccezioni, chiamare una seconda routine che imposta la proprietà LinkVisited su
true
e usa il metodo Start per avviare il browser predefinito con un URL. Per usare il metodo Start è necessario aggiungere un riferimento allo spazio dei nomi System.Diagnostics.Importante
Se il codice seguente viene eseguito in un ambiente parzialmente attendibile, ad esempio in un'unità condivisa, il compilatore JIT fallisce quando viene chiamato il metodo
VisitLink
. L'istruzioneSystem.Diagnostics.Process.Start
causa un errore di richiesta di collegamento. Intercettando l'eccezione quando viene chiamato il metodoVisitLink
, il codice seguente garantisce che se il compilatore JIT ha esito negativo, l'errore viene gestito normalmente.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"); }
Vedere anche
.NET Desktop feedback