Freigeben über


TextPattern.GetSelection Methode

Definition

Ruft eine Auflistung von nicht zusammenhängenden Textbereichen ab, die der aktuellen Textauswahl zugeordnet sind.

public:
 cli::array <System::Windows::Automation::Text::TextPatternRange ^> ^ GetSelection();
public System.Windows.Automation.Text.TextPatternRange[] GetSelection ();
member this.GetSelection : unit -> System.Windows.Automation.Text.TextPatternRange[]
Public Function GetSelection () As TextPatternRange()

Gibt zurück

TextPatternRange[]

Eine Auflistung von nicht zusammenhängenden Textbereichen.

Ausnahmen

Der Textcontainer unterstützt keine Textauswahl.

Beispiele

private TextPatternRange CurrentSelection(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 null;
    }
    TextPatternRange[] currentSelection = textpatternPattern.GetSelection();
    return currentSelection[0];
}
Private Function CurrentSelection(ByVal target As AutomationElement) As TextPatternRange
    ' 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 Nothing
    End If
    Dim currentTextSelection As TextPatternRange() = textpatternPattern.GetSelection()
    Return currentTextSelection(0)
End Function

Hinweise

Wenn kein Text ausgewählt ist, GetSelection gibt den degenerieren Textbereich (leerer Bereich) an der Position des Systemzeigers (Texteinfügemarke) zurück.

Wenn der Systemzeiger (Texteinfügemarke) nicht vorhanden ist, GetSelection wird möglicherweise zurückgegeben null.

Hinweis

Verwenden Sie die SupportedTextSelection Eigenschaft, um zu testen, ob die Textauswahl oder die Positionierung der Texteinfügemarke vom Steuerelement unterstützt wird.

Gilt für

Siehe auch