Voici une publication étape par étape pour créer une application Silverlight qui détecte si la souris survole le contrôle Silverlight lorsqu'elle est instanciée.
Étape 1: Création d'un exemple d'application Silverlight avec Visual Studio (Fichier/Nouveau projet/application Silverlight)
Étape 2: Modifier la MainPage.xaml et placez le code suivant dans la grille du UserControl :
<Grid HorizontalAlignment="Center" VerticalAlignment="Center">
<TextBlock x:Name="x_Text" Text="Mouse Was Not Over" />
</Grid>
Etape 3: Modifier les MainPage.cs, et remplacer la classe MainPage avec le code suivant:
public partial class MainPage : UserControl
{
public MainPage()
{
InitializeComponent();
base.MouseEnter += OnMouseEnter;
base.Loaded += OnLoaded;
}
void OnMouseEnter(object sender, MouseEventArgs e)
{
x_Text.Text = "Mouse Was Over";
base.MouseEnter -= OnMouseEnter;
}
void OnLoaded(object sender, EventArgs e)
{
System.Windows.Threading.DispatcherTimer timer = new System.Windows.Threading.DispatcherTimer();
timer.Interval = new TimeSpan(300 * TimeSpan.TicksPerMillisecond);
timer.Tick += delegate(object senderTick, EventArgs eTick)
{
base.MouseEnter -= OnMouseEnter;
timer.Stop();
};
timer.Start();
}
}
Étape 4: Créez et exécutez! Essayez-le avec la souris sur le centre du contrôle Silverlight et en dehors du contrôle pour voir les résultats!
Pourriez-vous simplement utiliser l'événement MouseMove? –
L'événement MouseMove se déclenche lorsque la souris se déplace sur la boîte SL. mais si la souris est statique, l'évènement se déclenche – Gilad