Prise en charge d'UI Automation pour le type de contrôle Calendar

Notes

Cette documentation s’adresse aux développeurs .NET Framework qui souhaitent utiliser les classes UI Automation managées définies dans l’espace de noms System.Windows.Automation. Pour obtenir les dernières informations sur UI Automation, consultez API Windows Automation : UI Automation.

Cette rubrique fournit des informations sur la prise en charge d’UI Automation pour le type de contrôle Calendar. Dans UI Automation, un type de contrôle est un ensemble de conditions qu’un contrôle doit respecter pour pouvoir utiliser la propriété ControlTypeProperty. Les conditions incluent des instructions spécifiques pour l’arborescence UI Automation, les valeurs de propriété UI Automation, les modèles de contrôle et les événements UI Automation.

Les contrôles Calendar permettent à un utilisateur de déterminer facilement la date et de sélectionner d’autres dates.

Les sections suivantes définissent l’arborescence, les propriétés, les modèles de contrôle et les événements de l’IU Automation nécessaires pour le type de contrôle calendrier. Les exigences de l’IU Automation s’appliquent à tous les contrôles Calendar, que ce soit Windows Presentation Foundation (WPF), Win32 ou Windows Forms.

Arborescence UI Automation obligatoire

Le tableau suivant représente l’affichage de contrôle et l’affichage de contenu de l’arborescence UI Automation concernant les contrôles calendrier et décrit ce que peut contenir chaque affichage. Pour plus d’informations sur l’arborescence de l’IU Automation, consultez Vue d’ensemble de l’arborescence de l’IU Automation.

Affichage de contrôle Affichage de contenu
Calendrier

  • DataGrid

    • Header (0 ou 1)
    • HeaderItem (0 ou 7 ; la quantité dépend du nombre de jours affichés dans les colonnes)
    • ListItem (la quantité dépend du nombre de jours affichés)
    • Button (0 ou 2 ; pour paginer l’affichage du calendrier)
Calendrier

- ListItem (la quantité dépend du nombre de jours affichés)

Les contrôles calendar peuvent être représentés sous différentes formes dans l’interface utilisateur. Les seuls contrôles qui sont sûrs d’être dans l’affichage de contrôle de l’arborescence UI Automation sont les contrôles datagrid, header, header item et list item.

Propriétés UI Automation obligatoires

Le tableau suivant répertorie les propriétés UI Automation dont la valeur ou la définition est particulièrement adaptée aux contrôles calendar. Pour plus d’informations sur les propriétés UI Automation, consultez Propriétés UI Automation pour les clients.

Propriété UI Automation Valeur Notes
AutomationIdProperty Consultez les remarques. La valeur de cette propriété doit être unique dans tous les contrôles d’une application.
BoundingRectangleProperty Consultez les remarques. Rectangle externe qui contient l’ensemble du contrôle.
ClickablePointProperty Consultez les remarques. Pris en charge s’il existe un rectangle englobant. Si les points du rectangle englobant ne sont pas tous interactifs et que vous effectuez un test de positionnement spécialisé, vous devez remplacer et fournir un point interactif.
ControlTypeProperty Calendrier Cette valeur est identique pour toutes les infrastructures d’interface utilisateur.
IsContentElementProperty True Le contrôle de calendrier est toujours inclus dans l’affichage du contenu de l’arborescence UI Automation.
IsControlElementProperty True Le contrôle de calendrier est toujours inclus dans l’affichage du contrôle de l’arborescence UI Automation.
IsKeyboardFocusableProperty Consultez les remarques. Si le contrôle peut recevoir le focus clavier, il doit prendre en charge cette propriété.
LabeledByProperty Consultez les remarques. Étiquette du contrôle de document. En général, le titre du document est utilisé.
LocalizedControlTypeProperty « calendrier » Chaîne localisée correspondant au type de contrôle Calendar.
NameProperty Consultez les remarques. Le contrôle calendar tient généralement son nom de la date du jour.

Modèles de contrôle UI Automation obligatoires

Le tableau suivant répertorie les modèles de contrôle UI Automation qui doivent être pris en charge par tous les contrôles de calendrier. Pour plus d’informations sur les modèles de contrôle, consultez UI Automation Control Patterns Overview.

Modèle de contrôle/Propriété de modèle Support Notes
IGridProvider Oui Le contrôle calendar prend toujours en charge le modèle Grid car les jours d’un mois sont des éléments qui peuvent être parcourus de manière spatiale.
IScrollProvider Dépend La plupart des contrôles calendar prennent en charge le retournement de l’affichage par page. Le modèle Scroll est recommandé pour prendre en charge la navigation de pagination.
ISelectionProvider Dépend La plupart des contrôles calendar conservent un jour, un mois ou une année spécifique en tant que sélection du sous-élément. Certains calendriers peuvent être sélectionnés plusieurs fois et d’autres ne peuvent être sélectionnés qu’une seule fois.
ITableProvider Oui Le contrôle calendar dispose toujours d’un en-tête dans sa sous-arborescence pour les jours de la semaine ; le modèle Table doit donc être pris en charge.
IValueProvider Non Le modèle de contrôle Value n’est pas nécessaire pour les contrôles calendar car vous ne pouvez pas définir directement la valeur sur le contrôle. Si une date spécifique est associée au contrôle, les informations doivent être fournies par le modèle de contrôle Selection.

Événements UI Automation obligatoires

Le tableau suivant répertorie les événements UI Automation qui doivent être pris en charge par tous les contrôles de calendrier. Pour plus d’informations sur les événements, consultez UI Automation Events Overview.

Événement UI Automation Support Notes
AutomationFocusChangedEvent Obligatoire None
Événement de modification de propriétéBoundingRectangleProperty Obligatoire None
Événement de modification de propriétéIsEnabledProperty Obligatoire None
Événement de modification de propriétéIsOffscreenProperty Obligatoire None
LayoutInvalidatedEvent Obligatoire None
StructureChangedEvent Obligatoire None
Événement de modification de propriétéCurrentViewProperty Dépend None
Événement de modification de propriétéHorizontallyScrollableProperty Dépend Si le contrôle prend en charge le modèle de contrôle Scroll, il doit prendre en charge cet événement.
Événement de modification de propriétéHorizontalScrollPercentProperty Dépend Si le contrôle prend en charge le modèle de contrôle Scroll, il doit prendre en charge cet événement.
Événement de modification de propriétéHorizontalViewSizeProperty Dépend Si le contrôle prend en charge le modèle de contrôle Scroll, il doit prendre en charge cet événement.
Événement de modification de propriétéVerticalScrollPercentProperty Dépend Si le contrôle prend en charge le modèle de contrôle Scroll, il doit prendre en charge cet événement.
Événement de modification de propriétéVerticallyScrollableProperty Dépend Si le contrôle prend en charge le modèle de contrôle Scroll, il doit prendre en charge cet événement.
Événement de modification de propriétéVerticalViewSizeProperty Dépend Si le contrôle prend en charge le modèle de contrôle Scroll, il doit prendre en charge cet événement.
InvalidatedEvent Obligatoire None

Voir aussi