DeferrableEventArgs, classe
Classe de modèle utilisée pour les types d'arguments des événements différés.
Syntaxe
template <typename TEventArgsInterface, typename TEventArgsClass>
class DeferrableEventArgs : public TEventArgsInterface;
Paramètres
TEventArgsInterface
Type d’interface qui déclare les arguments d’un événement différé.
TEventArgsClass
Classe qui implémente TEventArgsInterface.
Membres
Méthodes publiques
Nom | Description |
---|---|
DeferrableEventArgs ::GetDeferral | Obtient une référence à l’objet Deferral qui représente un événement différé. |
DeferrableEventArgs ::InvokeAllFinished | Appelée pour indiquer que toutes les opérations de traitement d'un événement différé sont terminées. |
Notes
Les instances de cette classe sont passées aux gestionnaires des événements différés. Les paramètres du modèle représentent une interface qui définit les détails des arguments d’événement pour un type spécifique d’événement différé, et une classe qui implémente cette interface.
La classe est présentée comme premier argument au gestionnaire d'événements qui traite l'événement différé. Vous pouvez appeler la méthode GetDeferral pour obtenir l’objet Deferral à partir duquel vous pouvez obtenir toutes les informations sur l’événement différé. Une fois la gestion des événements terminée, vous devez appeler Complete sur l'objet Deferral. Vous devez ensuite appeler InvokeAllFinished à la fin de la méthode du gestionnaire d’événements, ce qui garantit que l’achèvement de tous les événements différés est communiqué correctement.
Spécifications
En-tête : event.h
Espace de noms : Microsoft::WRL
DeferrableEventArgs ::GetDeferral
Obtient une référence à l’objet Deferral qui représente un événement différé.
HRESULT GetDeferral([out, retval] Windows::Foundation::IDeferral** result)
Paramètres
result
Pointeur qui référence l’objet Deferral une fois l’appel terminé.
Valeur de retour
S_OK si l'opération réussit. Sinon, une valeur HRESULT indique l'erreur.
DeferrableEventArgs ::InvokeAllFinished
Appelée pour indiquer que toutes les opérations de traitement d'un événement différé sont terminées.
void InvokeAllFinished()
Notes
Vous devez appeler cette méthode après que la source d’événement appelle InvokeAll. L'appel à cette méthode empêche tout autre report et force l'exécution du gestionnaire d'achèvement en l'absence de report.