MultipleViewPattern.MultipleViewPatternInformation.GetSupportedViews 方法

定义

检索特定于控件的视图标识符的集合。

public:
 cli::array <int> ^ GetSupportedViews();
public int[] GetSupportedViews ();
member this.GetSupportedViews : unit -> int[]
Public Function GetSupportedViews () As Integer()

返回

Int32[]

一个整数值集合,该集合标识了可用于 AutomationElement 的视图。 默认值为一个空的整数数组。

示例

在以下示例中,获取整数标识符的集合,表示可用于支持 MultipleViewPattern的控件的视图。

///--------------------------------------------------------------------
/// <summary>
/// Obtains a MultipleViewPattern control pattern from an 
/// automation element.
/// </summary>
/// <param name="targetControl">
/// The automation element of interest.
/// </param>
/// <returns>
/// A MultipleViewPattern object.
/// </returns>
///--------------------------------------------------------------------
private MultipleViewPattern GetMultipleViewPattern(
    AutomationElement targetControl)
{
    MultipleViewPattern multipleViewPattern = null;

    try
    {
        multipleViewPattern =
            targetControl.GetCurrentPattern(
            MultipleViewPattern.Pattern)
            as MultipleViewPattern;
    }
    // Object doesn't support the MultipleViewPattern control pattern
    catch (InvalidOperationException)
    {
        return null;
    }

    return multipleViewPattern;
}
'/--------------------------------------------------------------------
'/ <summary>
'/ Obtains a MultipleViewPattern control pattern from an 
'/ automation element.
'/ </summary>
'/ <param name="targetControl">
'/ The automation element of interest.
'/ </param>
'/ <returns>
'/ A MultipleViewPattern object.
'/ </returns>
'/--------------------------------------------------------------------
Private Function GetMultipleViewPattern( _
ByVal targetControl As AutomationElement) As MultipleViewPattern
    Dim multipleViewPattern As MultipleViewPattern = Nothing

    Try
        multipleViewPattern = DirectCast( _
        targetControl.GetCurrentPattern(multipleViewPattern.Pattern), _
        MultipleViewPattern)
    Catch exc As InvalidOperationException
        'Object doesn't support the MultipleViewPattern control pattern
        Return Nothing
    End Try

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

    return multipleViewPattern.Current.GetSupportedViews();
}
'/--------------------------------------------------------------------
'/ <summary>
'/ Gets the collection of currently supported views from a target.
'/ </summary>
'/ <param name="multipleViewPattern">
'/ The MultipleViewPattern obtained from a multiple view control.
'/ </param>
'/ <returns>
'/ A collection of identifiers representing the supported views.
'/ </returns>
'/--------------------------------------------------------------------
Private Function GetSupportedViewsFromControl( _
ByVal multipleViewPattern As MultipleViewPattern) As Integer()
    If multipleViewPattern Is Nothing Then
        Throw New ArgumentNullException( _
        "MultipleViewPattern parameter must not be null.")
    End If

    Return multipleViewPattern.Current.GetSupportedViews()

End Function 'GetSupportedViewsFromControl

注解

视图标识符的集合在实例之间是相同的。

视图标识符值可以传递给 GetViewName

适用于