ITextRangeProvider.Move(TextUnit, Int32) Méthode

Définition

Déplace la plage de texte du nombre spécifié d'unités de texte.

public:
 int Move(System::Windows::Automation::Text::TextUnit unit, int count);
public int Move (System.Windows.Automation.Text.TextUnit unit, int count);
abstract member Move : System.Windows.Automation.Text.TextUnit * int -> int
Public Function Move (unit As TextUnit, count As Integer) As Integer

Paramètres

unit
TextUnit

Limite d'unité de texte.

count
Int32

Nombre d'unités de texte à déplacer.

Une valeur positive déplace la plage de texte vers l'avant, une valeur négative déplace la plage de texte vers l'arrière. 0 n'a aucun effet.

Retours

Nombre d'unités réellement déplacées. Ce peut être moins que le nombre requis si l'un ou l'autre des nouveaux points de terminaison de plage de texte est supérieur ou inférieur aux points de terminaison de DocumentRange.

Remarques

Quand il est nécessaire de parcourir le contenu d'une plage de texte, il faut effectuer une série d'étapes en arrière-plan pour assurer la bonne exécution de la méthode Move .

  1. La plage de texte est normalisée : elle est réduite en une plage dégénérée au niveau du point de terminaison Start , rendant le point de terminaison End superflu. Cette étape est nécessaire pour supprimer l’ambiguïté dans les situations où une plage de texte dépasse les unit limites ; par exemple, « {L’U}RL https://www.microsoft.com/ est incorporée dans le texte » où « { » et « } » sont les points de terminaison de la plage de texte.

  2. La plage obtenue est déplacée vers l'arrière dans DocumentRange au début de la limite unit demandée.

  3. La plage est avancée ou reculée dans DocumentRange du nombre demandé de limites unit .

  4. La plage est ensuite étendue à partir d'un état de plage dégénérée en déplaçant le point de terminaison End d'une limite unit demandée.

Ajustements de plage par Move & ExpandToEnclosingUnit
Exemples de la façon dont une plage de texte est ajustée pour Move() et ExpandToEnclosingUnit()

Le contenu textuel (ou texte interne) d’un conteneur de texte et d’un objet incorporé, tel qu’un lien hypertexte ou une cellule de tableau, est exposé en tant que flux de texte unique et continu dans l’affichage de contrôle et l’affichage du contenu de l’arborescence UI Automation. Le contour des objets est ignoré.

Plages de texte étendues par des objets incorporés.
Exemple de flux de texte avec des objets incorporés et leurs amplitudes

Move respecte à la fois le texte masqué et visible.

Move passe au plus grand TextUnit suivant pris en charge si le donné TextUnit n’est pas pris en charge par le contrôle.

L’ordre, de la plus petite à la plus grande, est répertorié ci-dessous.

Le texte n’est en aucun cas modifié, la plage de texte s’étend simplement sur une autre partie du texte.

S’applique à