TextPatternRange.MoveEndpointByRange Methode

Definitie

Hiermee verplaatst u één eindpunt van een tekstbereik naar het opgegeven eindpunt van een tweede tekstbereik.

public:
 void MoveEndpointByRange(System::Windows::Automation::Text::TextPatternRangeEndpoint endpoint, System::Windows::Automation::Text::TextPatternRange ^ targetRange, System::Windows::Automation::Text::TextPatternRangeEndpoint targetEndpoint);
public void MoveEndpointByRange(System.Windows.Automation.Text.TextPatternRangeEndpoint endpoint, System.Windows.Automation.Text.TextPatternRange targetRange, System.Windows.Automation.Text.TextPatternRangeEndpoint targetEndpoint);
member this.MoveEndpointByRange : System.Windows.Automation.Text.TextPatternRangeEndpoint * System.Windows.Automation.Text.TextPatternRange * System.Windows.Automation.Text.TextPatternRangeEndpoint -> unit
Public Sub MoveEndpointByRange (endpoint As TextPatternRangeEndpoint, targetRange As TextPatternRange, targetEndpoint As TextPatternRangeEndpoint)

Parameters

endpoint
TextPatternRangeEndpoint

Het eindpunt dat moet worden verplaatst.

targetRange
TextPatternRange

Een ander bereik van dezelfde tekstprovider.

targetEndpoint
TextPatternRangeEndpoint

Een eindpunt in het andere bereik.

Voorbeelden

 private void MoveEndpointByRangeFromSelection(AutomationElement target)
{
    // Specify the control type we're looking for, in this case 'Document'
    PropertyCondition cond = new PropertyCondition(AutomationElement.ControlTypeProperty, ControlType.Document);

    // target --> The root AutomationElement.
    AutomationElement textProvider = target.FindFirst(TreeScope.Descendants, cond);

    TextPattern textpatternPattern = textProvider.GetCurrentPattern(TextPattern.Pattern) as TextPattern;

    if (textpatternPattern == null)
    {
        Console.WriteLine("Root element does not contain a descendant that supports TextPattern.");
        return;
    }
    TextPatternRange[] currentSelection = textpatternPattern.GetSelection();
    TextPatternRange[] currentVisibleRanges = textpatternPattern.GetVisibleRanges();

    currentSelection[0].MoveEndpointByRange(
        TextPatternRangeEndpoint.Start,
        currentVisibleRanges[0], 
        TextPatternRangeEndpoint.Start);
}
Private Sub MoveEndpointByRangeFromSelection(ByVal target As AutomationElement)
    ' Specify the control type we're looking for, in this case 'Document'
    Dim cond As PropertyCondition = New PropertyCondition(AutomationElement.ControlTypeProperty, ControlType.Document)

    ' target --> The root AutomationElement.
    Dim textProvider As AutomationElement = target.FindFirst(TreeScope.Descendants, cond)

    Dim textpatternPattern As TextPattern = CType(textProvider.GetCurrentPattern(TextPattern.Pattern), TextPattern)

    If (textpatternPattern Is Nothing) Then
        Console.WriteLine("Root element does not contain a descendant that supports TextPattern.")
        Return
    End If
    Dim currentSelection As TextPatternRange() = textpatternPattern.GetSelection()
    Dim currentVisibleRanges As TextPatternRange() = textpatternPattern.GetVisibleRanges()
    currentSelection(0).MoveEndpointByRange(TextPatternRangeEndpoint.Start, _
                                     currentVisibleRanges(0), _
                                     TextPatternRangeEndpoint.Start)
End Sub

Opmerkingen

Als het eindpunt dat wordt verplaatst, het andere eindpunt van hetzelfde tekstbereik overschrijdt, wordt dat andere eindpunt ook verplaatst, wat resulteert in een degenererend bereik en de juiste volgorde van de eindpunten (dat wil Start gezegd altijd kleiner dan of gelijk aan zijn).End

Van toepassing op