Cet article a fait l'objet d'une traduction manuelle. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. |
Traduction
Source
|
DispatcherTimer, classe
Minuterie intégrée dans la file d'attente de Dispatcher qui est traitée à un intervalle de temps et selon une priorité spécifiés.
Assembly : WindowsBase (dans WindowsBase.dll)
XMLNS pour XAML : Non mappé à un xmlns.
Le type DispatcherTimer expose les membres suivants.
| Nom | Description | |
|---|---|---|
|
DispatcherTimer() | Initialise une nouvelle instance de la classe DispatcherTimer. |
|
DispatcherTimer(DispatcherPriority) | Initialise une nouvelle instance de la classe DispatcherTimer qui traite des événements de minuterie à la priorité spécifiée. |
|
DispatcherTimer(DispatcherPriority, Dispatcher) | Initialise une nouvelle instance de la classe DispatcherTimer qui s'exécute sur le Dispatcher spécifié à la priorité spécifiée. |
|
DispatcherTimer(TimeSpan, DispatcherPriority, EventHandler, Dispatcher) | Initialise une nouvelle instance de la classe DispatcherTimer qui utilise l'intervalle de temps, la priorité, le gestionnaire d'événements et le Dispatcher spécifiés. |
| Nom | Description | |
|---|---|---|
|
Dispatcher | Obtient le Dispatcher associé à DispatcherTimer. |
|
Interval | Obtient ou définit la durée séparant les graduations de la minuterie. |
|
IsEnabled | Obtient ou définit une valeur qui indique si la minuterie est active. |
|
Tag | Obtient ou définit un objet de données défini par l'utilisateur. |
| Nom | Description | |
|---|---|---|
|
Equals(Object) | Détermine si l'Object spécifié est égal à l'Object en cours. (Hérité de Object.) |
|
Finalize | Autorise un objet à tenter de libérer des ressources et d'exécuter d'autres opérations de netto***ge avant qu'il ne soit récupéré par l'opération garbage collection. (Hérité de Object.) |
|
GetHashCode | Sert de fonction de hachage pour un type particulier. (Hérité de Object.) |
|
GetType | Obtient le Type de l'instance actuelle. (Hérité de Object.) |
|
MemberwiseClone | Crée une copie superficielle de l'objet Object actif. (Hérité de Object.) |
|
Start | Démarre DispatcherTimer. |
|
Stop | Arrête DispatcherTimer. |
|
ToString | Retourne une chaîne qui représente l'objet actuel. (Hérité de Object.) |
DispatcherTimer est réévalué en haut de chaque boucle Dispatcher.
Les minuteries ne se déclencheront peut-être pas exactement durant l'intervalle de temps défini, mais il est garanti qu'elles ne se déclencheront pas avant. Ceci est dû au fait que les opérations DispatcherTimer sont placées dans la file d'attente Dispatcher tout comme les autres opérations. Le moment d'exécution de l'opération DispatcherTimer dépend des autres travaux de la file d'attente et de leur priorité.
Si System.Timers.Timer est utilisé dans une application WPF, il convient de noter que System.Timers.Timer s'exécute sur un thread autre que le thread user interface (UI). Pour accéder aux objets du thread user interface (UI), il faut publier l'opération sur le Dispatcher du thread user interface (UI) à l'aide de Invoke ou BeginInvoke. L'utilisation de DispatcherTimer au lieu de System.Timers.Timer est justifiée par le fait que DispatcherTimer s'exécute sur le même thread que Dispatcher et que DispatcherPriority peut être défini sur DispatcherTimer.
DispatcherTimer garde un objet actif lorsque les méthodes de l'objet sont liées à la minuterie.
L'exemple suivant crée DispatcherTimer qui met à jour le contenu de Label et appelle la méthode InvalidateRequerySuggested sur CommandManager.
Un objet DispatcherTimer appelé dispatcherTimer est créé. Le gestionnaire d'événements dispatcherTimer_Tick est ajouté à l'événement Tick de dispatcherTimer. La valeur 1 seconde est affectée à Interval à l'aide d'un objet TimeSpan et la minuterie est démarrée.
Le gestionnaire d'événements Tick met à jour Label qui affiche la seconde actuelle, et il appelle InvalidateRequerySuggested sur CommandManager.
// System.Windows.Threading.DispatcherTimer.Tick handler // // Updates the current seconds display and calls // InvalidateRequerySuggested on the CommandManager to force // the Command to raise the CanExecuteChanged event. private void dispatcherTimer_Tick(object sender, EventArgs e) { // Updating the Label which displays the current second lblSeconds.Content = DateTime.Now.Second; // Forcing the CommandManager to raise the RequerySuggested event CommandManager.InvalidateRequerySuggested(); }
Windows 7, Windows Vista SP1 ou ultérieur, Windows XP SP3, Windows Server 2008 (installation minimale non prise en charge), Windows Server 2008 R2 (installation minimale prise en charge avec SP1 ou version ultérieure), Windows Server 2003 SP2
Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.