Redigera

Dela via


MultipleViewPattern.SupportedViewsProperty Field

Definition

Identifies the property that gets the control-specific collection of views.

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

Field Value

Examples

In the following example, a collection of integer identifiers is obtained that represents the current views available for a control that supports MultipleViewPattern.

///--------------------------------------------------------------------
/// <summary>
/// Finds all automation elements that satisfy 
/// the specified condition(s).
/// </summary>
/// <param name="targetApp">
/// The automation element from which to start searching.
/// </param>
/// <returns>
/// A collection of automation elements satisfying 
/// the specified condition(s).
/// </returns>
///--------------------------------------------------------------------
private AutomationElementCollection FindAutomationElement(
    AutomationElement targetApp)
{
    if (targetApp == null)
    {
        throw new ArgumentException("Root element cannot be null.");
    }

    PropertyCondition conditionSupportsMultipleView =
        new PropertyCondition(
        AutomationElement.IsMultipleViewPatternAvailableProperty, true);

    return targetApp.FindAll(
        TreeScope.Descendants, conditionSupportsMultipleView);
}
'/--------------------------------------------------------------------
'/ <summary>
'/ Finds all automation elements that satisfy 
'/ the specified condition(s).
'/ </summary>
'/ <param name="targetApp">
'/ The automation element from which to start searching.
'/ </param>
'/ <returns>
'/ A collection of automation elements satisfying 
'/ the specified condition(s).
'/ </returns>
'/--------------------------------------------------------------------
Private Function FindAutomationElement( _
ByVal targetApp As AutomationElement) As AutomationElementCollection
    If targetApp Is Nothing Then
        Throw New ArgumentException("Root element cannot be null.")
    End If

    Dim conditionSupportsMultipleView As New PropertyCondition( _
    AutomationElement.IsMultipleViewPatternAvailableProperty, True)

    Return targetApp.FindAll( _
    TreeScope.Descendants, conditionSupportsMultipleView)

End Function 'FindAutomationElement
///--------------------------------------------------------------------
/// <summary>
/// Gets the collection of currently supported views from a target.
/// </summary>
/// <param name="multipleViewControl">
/// The current multiple view control.
/// </param>
/// <returns>
/// A collection of identifiers representing the supported views.
/// </returns>
///--------------------------------------------------------------------
private int[] GetSupportedViewsFromPattern(
    AutomationElement multipleViewControl)
{
    if (multipleViewControl == null)
    {
        throw new ArgumentNullException(
            "AutomationElement parameter must not be null.");
    }

    return multipleViewControl.GetCurrentPropertyValue(
        MultipleViewPattern.SupportedViewsProperty) as int[];
}
'/--------------------------------------------------------------------
'/ <summary>
'/ Gets the collection of currently supported views from a target.
'/ </summary>
'/ <param name="multipleViewControl">
'/ The current multiple view control.
'/ </param>
'/ <returns>
'/ A collection of identifiers representing the supported views.
'/ </returns>
'/--------------------------------------------------------------------
Private Function GetSupportedViewsFromPattern( _
ByVal multipleViewControl As AutomationElement) As Integer()
    If multipleViewControl Is Nothing Then
        Throw New ArgumentNullException( _
        "AutomationElement parameter must not be null.")
    End If

    Return DirectCast(multipleViewControl.GetCurrentPropertyValue( _
    MultipleViewPattern.SupportedViewsProperty), Integer())
End Function 'GetSupportedViewsProperty

Remarks

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

This property is not present in MultipleViewPattern.MultipleViewPatternInformation and must be retrieved by using GetCurrentPropertyValue or GetCachedPropertyValue.

Applies to