共用方式為


TreeWalker.GetParent 方法

定義

擷取所指定 AutomationElement 的父項目。

多載

GetParent(AutomationElement)

擷取所指定 AutomationElement 的父項目。

GetParent(AutomationElement, CacheRequest)

擷取指定之 AutomationElement 的父項目並快取屬性和模式。

備註

樹狀 AutomationElement 結構會隨著可見的使用者介面變更而變更, (UI) 元素。 不保證傳回為父元素的專案將會在後續傳遞時以父元素的形式傳回。

GetParent(AutomationElement)

擷取所指定 AutomationElement 的父項目。

public:
 System::Windows::Automation::AutomationElement ^ GetParent(System::Windows::Automation::AutomationElement ^ element);
public System.Windows.Automation.AutomationElement GetParent (System.Windows.Automation.AutomationElement element);
member this.GetParent : System.Windows.Automation.AutomationElement -> System.Windows.Automation.AutomationElement
Public Function GetParent (element As AutomationElement) As AutomationElement

參數

element
AutomationElement

要傳回父代的項目。

傳回

父項目,如果指定的項目為樹狀目錄的根項目,或在目前檢視中看不到父項目,則為 Null 參考 (在 Visual Basic 中為 Nothing)。

範例

下列範例顯示 GetParent 用來尋找包含指定專案的視窗專案。

/// <summary>
/// Retrieves the top-level window that contains the specified UI Automation element.
/// </summary>
/// <param name="element">The contained element.</param>
/// <returns>The containing top-level window element.</returns>
private AutomationElement GetTopLevelWindow(AutomationElement element)
{
    TreeWalker walker = TreeWalker.ControlViewWalker;
    AutomationElement elementParent;
    AutomationElement node = element;
    if (node == elementRoot) return node;
    do
    {
        elementParent = walker.GetParent(node);
        if (elementParent == AutomationElement.RootElement) break;
        node = elementParent;
    }
    while (true);
    return node;
}
    ''' <summary>
    ''' Retrieves the top-level window that contains the specified UI Automation element.
    ''' </summary>
    ''' <param name="element">The contained element.</param>
    ''' <returns>The containing top-level window element.</returns>
    Private Function GetTopLevelWindow(ByVal element As AutomationElement) As AutomationElement 
        Dim walker As TreeWalker = TreeWalker.ControlViewWalker
        Dim elementParent As AutomationElement
        Dim node As AutomationElement = element
        If node = elementRoot Then
            Return node
        End If
        Do
            elementParent = walker.GetParent(node)
            If elementParent = AutomationElement.RootElement Then
                Exit Do
            End If
            node = elementParent
        Loop While True
        Return node
    
    End Function 'GetTopLevelWindow
End Class

另請參閱

適用於

GetParent(AutomationElement, CacheRequest)

擷取指定之 AutomationElement 的父項目並快取屬性和模式。

public:
 System::Windows::Automation::AutomationElement ^ GetParent(System::Windows::Automation::AutomationElement ^ element, System::Windows::Automation::CacheRequest ^ request);
public System.Windows.Automation.AutomationElement GetParent (System.Windows.Automation.AutomationElement element, System.Windows.Automation.CacheRequest request);
member this.GetParent : System.Windows.Automation.AutomationElement * System.Windows.Automation.CacheRequest -> System.Windows.Automation.AutomationElement
Public Function GetParent (element As AutomationElement, request As CacheRequest) As AutomationElement

參數

element
AutomationElement

要傳回父代的項目。

request
CacheRequest

快取要求物件,指定在傳回的 AutomationElement 中要快取的成員。

傳回

父項目,如果指定的項目為樹狀目錄的根項目,或在檢視中看不到父項目,則為 Null 參考 (在 Visual Basic 中為 Nothing)。

備註

樹狀 AutomationElement 結構會隨著可見的使用者介面變更而變更, (UI) 元素。 不保證傳回為父元素的專案將會在後續傳遞時以父元素的形式傳回。

另請參閱

適用於