Freigeben über


ITextRangeProvider.MoveEndpointByUnit Methode

Definition

Verschiebt einen Endpunkt des Textbereichs um die festgelegte Anzahl von Texteinheiten innerhalb des Dokumentbereichs.

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

Parameter

endpoint
TextPatternRangeEndpoint

Der zu verschiebende Endpunkt.

unit
TextUnit

Die zu verschiebende Texteinheit.

count
Int32

Die Anzahl der zu verschiebenden Einheiten. Bei einem positiven Wert wird der Endpunkt vorwärts verschoben. Bei einem negativen Wert wird der Endpunkt rückwärts verschoben. Der Wert 0 (null) hat keine Auswirkungen.

Gibt zurück

Die Anzahl von Einheiten, um die der Endpunkt tatsächlich verschoben wurde. Diese kann kleiner als die angeforderte Anzahl sein, wenn beim Verschieben des Endpunkts der Anfang bzw. das Ende des Dokuments erreicht wird.

Hinweise

Wenn der Inhalt eines Textbereichs durchlaufen werden muss, ist eine Reihe von Hintergrundschritten erforderlich, um die Move -Methode erfolgreich auszuführen.

  1. Der Textbereich ist normalisiert. Dies bedeutet, dass dieser auf einen degenerierten Bereich am Start -Endpunkt reduziert ist, wodurch der End -Endpunkt überflüssig wird. Dieser Schritt ist erforderlich, um Mehrdeutigkeiten in Situationen zu entfernen, in denen ein Textbereich Grenzen überschreitet unit , z. B. "{The U}RL https://www.microsoft.com/ is embedded in text", wobei "{" und "}" die Textbereichsendpunkte sind.

  2. Der resultierende Bereich wird im DocumentRange zurück an den Anfang der angeforderten unit -Grenze verschoben.

  3. Anschließend wird der Bereich von einem degenerierten Bereichszustand erweitert, indem der End -Endpunkt um eine angeforderte unit -Grenze verschoben wird.

Bereichsanpassungen durch Move & ExpandToEnclosingUnit
Beispiele für die Anpassung eines Textbereichs für Move() und ExpandToEnclosingUnit()

MoveEndpointByUnit wird auf die nächstgrößer TextUnit unterstützte zurückverzögert, wenn die angegebene TextUnit vom -Steuerelement nicht unterstützt wird.

Die Reihenfolge, von der kleinsten Einheit bis zur größten, ist unten aufgeführt.

Gilt für: