Edit

Share via


TextPattern.Pattern Field

Definition

Identifies the TextPattern pattern.

public: static initonly System::Windows::Automation::AutomationPattern ^ Pattern;
public static readonly System.Windows.Automation.AutomationPattern Pattern;
 staticval mutable Pattern : System.Windows.Automation.AutomationPattern
Public Shared ReadOnly Pattern As AutomationPattern 

Field Value

Examples

// Set up the conditions for finding the text control.
PropertyCondition documentControl = new PropertyCondition(
    AutomationElement.ControlTypeProperty,
    ControlType.Document);
PropertyCondition textPatternAvailable = new PropertyCondition(
    AutomationElement.IsTextPatternAvailableProperty, true);
AndCondition findControl =
    new AndCondition(documentControl, textPatternAvailable);

// Get the Automation Element for the first text control found.
// For the purposes of this sample it is sufficient to find the 
// first text control. In other cases there may be multiple text
// controls to sort through.
targetDocument =
    targetWindow.FindFirst(TreeScope.Descendants, findControl);

// Didn't find a text control.
if (targetDocument == null)
{
    targetResult.Content =
        WPFTarget +
        " does not contain a Document control type.";
    targetResult.Background = Brushes.Salmon;
    startWPFTargetButton.IsEnabled = false;
    return;
}

// Get required control patterns 
targetTextPattern =
    targetDocument.GetCurrentPattern(
    TextPattern.Pattern) as TextPattern;

// Didn't find a text control that supports TextPattern.
if (targetTextPattern == null)
{
    targetResult.Content =
        WPFTarget +
        " does not contain an element that supports TextPattern.";
    targetResult.Background = Brushes.Salmon;
    startWPFTargetButton.IsEnabled = false;
    return;
}
' Set up the conditions for finding the text control.
Dim documentControl As New PropertyCondition( _
AutomationElement.ControlTypeProperty, ControlType.Document)
Dim textPatternAvailable As New PropertyCondition( _
AutomationElement.IsTextPatternAvailableProperty, True)
Dim findControl As New AndCondition(documentControl, textPatternAvailable)

' Get the Automation Element for the first text control found.
' For the purposes of this sample it is sufficient to find the 
' first text control. In other cases there may be multiple text
' controls to sort through.
targetDocument = targetWindow.FindFirst(TreeScope.Descendants, findControl)

' Didn't find a text control.
If targetDocument Is Nothing Then
    targetResult.Content = _
    WPFTarget + " does not contain a Document control type."
    targetResult.Background = Brushes.Salmon
    startWPFTargetButton.IsEnabled = False
    Return
End If

' Get required control patterns 
targetTextPattern = DirectCast( _
targetDocument.GetCurrentPattern(TextPattern.Pattern), TextPattern)

' Didn't find a text control that supports TextPattern.
If targetTextPattern Is Nothing Then
    targetResult.Content = WPFTarget + _
    " does not contain an element that supports TextPattern."
    targetResult.Background = Brushes.Salmon
    startWPFTargetButton.IsEnabled = False
    Return
End If

Remarks

This identifier is used by UI Automation client applications. UI Automation providers should use the equivalent field in TextPatternIdentifiers.

The pattern identifier is passed to methods such as GetCurrentPattern to retrieve the control pattern of interest from the specified AutomationElement.

Applies to