ComboBox (type de contrôle)

Cette rubrique fournit des informations sur la prise en charge de Microsoft UI Automation pour le type de contrôle ComboBox .

Une zone de liste modifiable est une zone de liste associée à un contrôle statique ou à un contrôle d’édition qui affiche dans la zone de liste l’élément actuellement sélectionné. La zone de liste du contrôle est affichée en permanence ou apparaît uniquement quand l’utilisateur sélectionne la flèche de déroulement (qui est un bouton de commande) à côté du contrôle. Si le champ de sélection est un contrôle d’édition, l’utilisateur peut entrer des informations qui ne sont pas dans la liste. Sinon, l’utilisateur peut sélectionner uniquement les éléments de la liste.

Les sections suivantes définissent l’arborescence, les propriétés, les modèles de contrôle et les événements UI Automation requis pour le type de contrôle ComboBox . Les exigences d’UI Automation s’appliquent à tous les contrôles de zone de liste déroulante où l’infrastructure/plateforme d’interface utilisateur intègre la prise en charge d’UI Automation pour les types de contrôle et les modèles de contrôle

Cette rubrique contient les sections suivantes.

Structure d’arborescence classique

Le tableau suivant représente un contrôle classique et un affichage de contenu de l’arborescence UI Automation relative aux contrôles de zone de liste déroulante et décrit ce que peut contenir chaque affichage. Pour plus d’informations sur l’arborescence UI Automation, consultez UI Automation Tree Overview.

Affichage de contrôle Affichage de contenu
  • ComboBox
    • Edit (0 ou 1)
    • List (0 ou 1)
    • List Item (enfant de List. De 0 à plusieurs)
    • Button (1)
  • ComboBox
    • List Item (De 0 à plusieurs)

Le contrôle d’édition dans l’affichage de contrôle de la zone de liste déroulante n’est nécessaire que si la zone de liste modifiable peut être modifiée pour prendre n’importe quelle entrée, comme c’est le cas de la zone de liste déroulante dans la boîte de dialogue exécuter .

Propriétés pertinentes

Le tableau suivant répertorie les propriétés UI Automation dont la valeur ou la définition est particulièrement pertinente pour le type de contrôle ComboBox . Pour plus d’informations sur les propriétés UI Automation, consultez extraction de propriétés à partir d’éléments UI Automation.

Propriété UI Automation Valeur Notes
UIA _ AutomationIdPropertyId Consultez les remarques. La valeur de cette propriété doit être unique parmi tous les éléments homologues de l’affichage brut de l’arborescence UI Automation.
UIA _ BoundingRectanglePropertyId Consultez les remarques. Rectangle externe qui contient l’ensemble du contrôle.
UIA _ ClickablePointPropertyId Consultez les remarques. Pris en charge s’il existe un rectangle englobant. Si tous les points du rectangle englobant ne sont pas cliquables et que l’élément effectue un test de positionnement spécialisé, substituez et fournissez un point cliquable.
UIA _ ControlTypePropertyId ComboBox
UIA _ HelpTextPropertyId Consultez les remarques. Le texte d’aide pour les contrôles de zone de liste modifiable doit expliquer pourquoi l’utilisateur est invité à choisir une option dans la zone de liste déroulante. Le texte est semblable aux informations présentées dans une info-bulle. Par exemple, « Sélectionnez un élément pour définir la résolution d’affichage de votre moniteur ».
UIA _ IsContentElementPropertyId TRUE Les contrôles de zone de liste modifiable sont toujours inclus dans l’affichage de contenu de l’arborescence UI Automation.
UIA _ IsControlElementPropertyId TRUE Les contrôles de zone de liste modifiable sont toujours inclus dans l’affichage de contrôle de l’arborescence UI Automation.
UIA _ IsKeyboardFocusablePropertyId TRUE Les contrôles de zone de liste modifiable peuvent recevoir le focus clavier. Toutefois, lorsqu’un client UI Automation définit le focus sur une zone de liste déroulante, tout élément de la sous-arborescence de zone de liste déroulante peut recevoir le focus.
UIA _ LabeledByPropertyId Consultez les remarques. Les contrôles de zone de liste modifiable ont généralement une étiquette de texte statique référencée par cette propriété.
UIA _ LocalizedControlTypePropertyId Consultez les remarques. Chaîne localisée correspondant au type de contrôle ComboBox . La valeur par défaut est « zone de liste déroulante » pour en-US ou anglais (États-Unis).
UIA _ NamePropertyId Consultez les remarques. Le nom du contrôle de zone de liste déroulante est généralement généré à partir d’une étiquette de texte statique. S’il n’y a pas d’étiquette de texte statique, vous devez affecter une valeur à la propriété Name . La propriété Name ne doit jamais contenir le contenu actuel de la zone de liste déroulante ou changer lorsque le contenu de la zone de liste déroulante change.

Modèles de contrôle requis

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 zone de liste déroulante. Pour plus d’informations sur les modèles de contrôle, consultez UI Automation Control Patterns Overview.

Modèle de contrôle Support Notes
IExpandCollapseProvider Obligatoire Le modèle de contrôle ExpandCollapse doit être pris en charge, car un contrôle de zone de liste déroulante doit toujours contenir un bouton déroulant.
ISelectionProvider Dépend Affiche la sélection actuelle dans la zone de liste modifiable. La prise en charge du modèle de contrôle Selection est déléguée à la zone de liste sous la zone de liste déroulante, mais n’est peut-être pas toujours possible.
IValueProvider Dépend Si la zone de liste déroulante peut prendre des valeurs de texte arbitraires, le modèle de contrôle value doit être pris en charge. Ce modèle permet de définir par programmation le contenu de la chaîne de la zone de liste déroulante. Si le modèle de contrôle value n’est pas pris en charge, l’utilisateur doit sélectionner parmi les éléments de liste dans la sous-arborescence de la zone de liste déroulante.
IScrollProvider Jamais Le modèle de contrôle Scroll n’est jamais pris en charge directement sur une zone de liste déroulante. Il est pris en charge si une zone de liste contenue dans une zone de liste déroulante peut faire défiler et uniquement lorsque la zone de liste est visible à l’écran.

Événements obligatoires

Le tableau suivant répertorie les événements UI Automation nécessaires à la prise en charge des contrôles de zone de liste déroulante. Pour plus d’informations sur les événements, consultez UI Automation Events Overview.

Événement UI Automation Notes
UIA _ AutomationFocusChangedEventId
UIA _ Événement de modification de propriété BoundingRectanglePropertyId.
UIA _ Événement de modification de propriété IsEnabledPropertyId. Si le contrôle prend en charge la propriété IsEnabled , il doit prendre en charge cet événement.
UIA _ Événement de modification de propriété IsOffscreenPropertyId. Si le contrôle prend en charge la propriété IsOffscreen , il doit prendre en charge cet événement.
UIA _ StructureChangedEventId
UIA _ Événement de modification de propriété ExpandCollapseExpandCollapseStatePropertyId.
UIA _ Événement de modification de propriété ValueValuePropertyId. Si le contrôle prend en charge le modèle de contrôle value , il doit prendre en charge cet événement.

Conceptuel

Vue d'ensemble des types de contrôle UI Automation

Vue d'ensemble d'UI Automation