Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

Thomas Lebrun

Tout sur WPF, LINQ, C# et .NET en général !

Actualités

[WPF] Comment déclencher un évènement sur un contrôle ?

Il peut parfois s'avérer nécessaire de vouloir déclencher manuellement un évènement sur un contrôle. En effet, vous pourriez vouloir, par exemple, envoyer l'évènement KeyDown à une ComboBox alors que c'est la fenêtre de votre application qui a le focus.

Heureusement, on peut faire cela très simplement avec WPF. En effet, il vous suffit de vous abonner à l'évènement qui vous intéresse (par exemple, l'évènement KeyDown de la Window) et de re-déclencher cet évènement sur un contrôle précis.

Pour redéclencher l'évènement, il vous suffit d'appeler la méthode RaiseEvent qui prend en paramètre une instance d'un objet de type System.Windows.RoutedEventArgs qui identifie l'évènement routé (RoutedEvent) que vous voulez redéclencher.

Autrement dit, dans notre exemple, si l'on veut relancer l'évènement KeyDown d'une ComboBox à partir du KeyDown de la Window, il nous suffit d'appeler ce code:

private void Window_KeyDown(object sender, KeyEventArgs e)

{

    if (e.Key == Key.Up || e.Key == Key.Down)

    {

        this.cb.RaiseEvent(e);

    }

}

(Bien entendu, dans cet exemple, cb est une instance de la classe ComboBox mais cela aurait fonctionné avec un ListBox, une ListView, etc...)

 

A+

Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :
Posted: jeudi 24 juillet 2008 10:24 par Thomas LEBRUN
Classé sous : ,

Commentaires

Pas de commentaires

Les commentaires anonymes sont désactivés

Les 10 derniers blogs postés

- TechDays Paris 2012 : Session pleinière jour 3 par Blog Technique de Romelard Fabrice le il y a 19 heures et 29 minutes

- Mishra Reader : un lecteur RSS très Zune Style en Open Source ! par Cyril Sansus le il y a 22 heures et 3 minutes

- [framework 4] Les Tasks et le Thread UI par Fathi Bellahcene le 02-09-2012, 00:33

- Workflow Foundation 3 a un pied dans la tombe par Blog de Jérémy Jeanson le 02-08-2012, 22:15

- TechDays Paris 2012 : Nouvelles tendances du poste de travail - Bring Your own PC par Blog Technique de Romelard Fabrice le 02-08-2012, 19:42

- TechDays Paris 2012 : System Center Service Manager 2012 Vue d’ensemble par Blog Technique de Romelard Fabrice le 02-08-2012, 17:32

- TechDays Paris 2012 : Pleinière second jour par Blog Technique de Romelard Fabrice le 02-08-2012, 16:23

- TechDays Paris 2012 : Retour d'expérience sur la mise en place d'un Cloud Privé par Blog Technique de Romelard Fabrice le 02-08-2012, 16:04

- TechDays Paris 2012 : Comment SharePoint a sauvé mes TechDays par Blog Technique de Romelard Fabrice le 02-07-2012, 23:59

- Perspective 3.0 pour Silverlight 5.0 par Perspective le 02-07-2012, 22:39