Procedura: utilizzare una decorazione di testo con un collegamento ipertestuale
Aggiornamento: novembre 2007
L'oggetto Hyperlink è un elemento del contenuto del flusso di livello inline che consente di ospitare collegamenti ipertestuali all'interno del contenuto del flusso. Per impostazione predefinita, Hyperlink utilizza un oggetto TextDecoration per visualizzare una sottolineatura. Gli oggetti TextDecoration possono richiedere prestazioni elevate per la creazione di un'istanza, in particolare se sono presenti molti oggetti Hyperlink. Se gli elementi Hyperlink utilizzati sono molti è opportuno visualizzare una sottolineatura solo al momento della generazione di un evento, ad esempio l'evento MouseEnter.
Nell'esempio riportato di seguito, il collegamento "My MSN" presenta una sottolineatura dinamica, vale a dire che la sottolineatura viene visualizzata solo al momento della generazione dell'evento MouseEnter.
Collegamenti ipertestuali definiti con TextDecorations
Esempio
Nell'esempio di markup riportato di seguito viene illustrato un oggetto Hyperlink definito con e senza sottolineatura:
<!-- Hyperlink with default underline. -->
<Hyperlink NavigateUri="https://www.msn.com">
MSN Home
</Hyperlink>
<Run Text=" | " />
<!-- Hyperlink with no underline. -->
<Hyperlink Name="myHyperlink" TextDecorations="None"
MouseEnter="OnMouseEnter"
MouseLeave="OnMouseLeave"
NavigateUri="https://www.msn.com">
My MSN
</Hyperlink>
Nell'esempio di codice riportato di seguito viene illustrato come creare una sottolineatura per Hyperlink sull'evento MouseEnter e come rimuoverla sull'evento MouseLeave.
// Display the underline on only the MouseEnter event.
private void OnMouseEnter(object sender, EventArgs e)
{
myHyperlink.TextDecorations = TextDecorations.Underline;
}
// Remove the underline on the MouseLeave event.
private void OnMouseLeave(object sender, EventArgs e)
{
myHyperlink.TextDecorations = null;
}
Vedere anche
Attività
Procedura: creare un effetto di testo
Concetti
Ottimizzazione delle prestazioni di applicazioni WPF