TextPattern.MixedAttributeValue Field

 

Identifies whether the value of a given attribute varies over a text range in a rich edit control.

Namespace:   System.Windows.Automation
Assembly:  UIAutomationClient (in UIAutomationClient.dll)

public static readonly object MixedAttributeValue

Field Value

Type: System.Object

GetAttributeValue returns TextPattern.MixedAttributeValue to indicate this variation instead of a collection of attribute values.

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

UI Automation clients get the value of the attribute by calling GetAttributeValue.

Values for this attribute are of type Object.

The following example shows how to obtain an attribute value for a range of text in Microsoft Notepad.

System_CAPS_noteNote

Microsoft Notepad is used as the text provider for example purposes only. Microsoft Notepad is not guaranteed to support the attribute value being requested.

private void GetAnimationStyleAttribute()
{
    // Start application.
    Process p = Process.Start("Notepad.exe","text.txt");

    // target --> The root AutomationElement.
    AutomationElement target = AutomationElement.FromHandle(p.MainWindowHandle);

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

    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;
    }

    Object oAttribute = textpatternPattern.DocumentRange.GetAttributeValue(TextPattern.AnimationStyleAttribute);
    if (oAttribute == TextPattern.MixedAttributeValue)
    {
        Console.WriteLine("Mixed animation styles.");
    }
    else
    {
        Console.WriteLine(oAttribute.ToString());
    }
}

.NET Framework
Available since 3.0
Return to top
Show: