Procedura: creare un effetto di attivazione utilizzando gli eventi
In questo esempio viene illustrato come modificare il colore di un elemento quando il puntatore del mouse entra e lascia l'area occupata dall'elemento .
Questo esempio è costituito da un file XAML (Extensible Application Markup Language) e da un file code-behind.
Nota
In questo esempio viene illustrato come usare gli eventi, ma il modo consigliato per ottenere questo stesso effetto consiste nell'usare un Trigger oggetto in uno stile. Per altre informazioni, vedere Applicazione di stili e modelli.
Esempio
Il codice XAML seguente crea l'interfaccia utente, costituita da Border intorno a , TextBlocke associa i MouseEnter gestori eventi e MouseLeave a Border.
<StackPanel>
<Border MouseEnter="OnMouseEnterHandler"
MouseLeave="OnMouseLeaveHandler"
Name="border1" Margin="10"
BorderThickness="1"
BorderBrush="Black"
VerticalAlignment="Center"
Width="300" Height="100">
<Label Margin="10" FontSize="14"
HorizontalAlignment="Center">Move Cursor Over Me</Label>
</Border>
</StackPanel>
Il code-behind seguente crea i MouseEnter gestori eventi e MouseLeave . Quando il puntatore del mouse entra in Border, lo sfondo di Border viene modificato in rosso. Quando il puntatore del mouse lascia , Borderlo sfondo dell'oggetto Border viene nuovamente impostato su bianco.
public partial class Window1 : Window
{
public Window1()
{
InitializeComponent();
}
// raised when mouse cursor enters the area occupied by the element
void OnMouseEnterHandler(object sender, MouseEventArgs e)
{
border1.Background = Brushes.Red;
}
// raised when mouse cursor leaves the area occupied by the element
void OnMouseLeaveHandler(object sender, MouseEventArgs e)
{
border1.Background = Brushes.White;
}
}
Partial Public Class Window1
Inherits Window
Public Sub New()
InitializeComponent()
End Sub
' raised when mouse cursor enters the are occupied by the element
Private Sub OnMouseEnterHandler(ByVal sender As Object, ByVal e As MouseEventArgs)
border1.Background = Brushes.Red
End Sub
' raised when mouse cursor leaves the are occupied by the element
Private Sub OnMouseLeaveHandler(ByVal sender As Object, ByVal e As MouseEventArgs)
border1.Background = Brushes.White
End Sub
End Class
.NET Desktop feedback