Lire en anglais

Partager via


FrameworkElement.GetVisualChild(Int32) Méthode

Définition

Substitue GetVisualChild(Int32) et retourne un enfant à l’index spécifié tiré d’une collection d’éléments enfants.

C#
protected override System.Windows.Media.Visual GetVisualChild(int index);

Paramètres

index
Int32

Index de base zéro de l’élément enfant demandé dans la collection.

Retours

Élément enfant demandé. La valeur ne doit pas retourner null ; si l’index fourni dépasse la plage établie, une exception est levée.

Exemples

L’exemple suivant montre comment un ornement personnalisé utilise les valeurs déclarées par un VisualCollection qu’il conserve pour ses enfants visuels multiples. Ces valeurs sont signalées par le biais des remplacements de VisualChildrenCount et GetVisualChild.

C#
// To store and manage the adorner's visual children.
VisualCollection visualChildren;
C#
// Override the VisualChildrenCount and GetVisualChild properties to interface with 
// the adorner's visual collection.
protected override int VisualChildrenCount { get { return visualChildren.Count; } }
protected override Visual GetVisualChild(int index) { return visualChildren[index]; }

Remarques

Dans l’implémentation FrameworkElement , le seul index valide est zéro. Le modèle de contenu pour GetVisualChild prend en charge zéro ou un élément enfant, pas une collection.

Notes pour les héritiers

Cette implémentation n’est valide que pour les éléments qui ne conservent pas de collection plus descriptive d’éléments enfants visuels. Tout élément disposant d’une telle collection doit remplacer cette méthode et mapper l’index à un index équivalent dans la collection d’éléments enfants pris en charge par cet élément. Un index dans la plage de zéro à VisualChildrenCount (moins un) doit retourner un élément valide ; tout autre index doit lever une exception hors plage. Un exemple de type d’élément qui prend en charge une collection enfant et remplace GetVisualChild(Int32) pour retourner plusieurs enfants possibles est Panel.

L’implémentation par défaut dans FrameworkElement suppose qu’un seul enfant visuel. Toute valeur passée pour index autre que zéro entraîne la levée d’une exception. Plusieurs éléments courants, tels que les décorateurs, les ornements ou les éléments avec un rendu spécialisé, remplacent l’implémentation FrameworkElement (de l’implémentation à partir de classes de base intermédiaires). Certaines implémentations appliquent toujours un enfant visuel, tandis que d’autres autorisent une collection.

S’applique à

Produit Versions
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10