Поделиться через


TextPatternRange.GetText(Int32) Метод

Определение

Возвращает содержимое текстового диапазона в виде обычного текста.

public:
 System::String ^ GetText(int maxLength);
public string GetText (int maxLength);
member this.GetText : int -> string
Public Function GetText (maxLength As Integer) As String

Параметры

maxLength
Int32

Максимальная длина возвращаемой строки. Если длина не ограничена, задайте значение -1 .

Возвращаемое значение

Содержимое текстового диапазона в виде обычного текста, возможно, обрезанное до заданной в параметре maxLength длины.

Исключения

Если maxLength меньше –1.

Примеры

 private String TextFromSelection(AutomationElement target, Int32 length)
{
    // 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();

    // GetText(-1) retrieves all characters but can be inefficient
    return currentSelection[0].GetText(length);
}
Private Function TextFromSelection(ByVal target As AutomationElement, ByVal length As Int32) As String
    ' 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 currentSelection As TextPatternRange() = textpatternPattern.GetSelection()
    ' GetText(-1) retrieves all characters but can be inefficient
    Return currentSelection(0).GetText(length)
End Function

Комментарии

GetText учитывает как скрытый, так и видимый текст. Клиент автоматизации пользовательского интерфейса может проверка IsHiddenAttribute для видимости текста.

Если maxLength значение больше длины диапазона текста вызывающего объекта, возвращаемая строка будет обычным текстом текстового диапазона.

GetText не будет зависеть от порядка конечных точек в текстовом потоке; он всегда будет возвращать текст между конечными точками начального и конечного значений диапазона текста в логическом порядке потока текста.

Применяется к

См. также раздел