Lingua

TreeWalker.GetNextSibling Metodo

Definizione

Recupera l'elemento di pari livello successivo dell'oggetto specificato AutomationElement.

Overload

Nome Descrizione
GetNextSibling(AutomationElement, CacheRequest)

Recupera l'elemento di pari livello successivo delle proprietà e dei modelli specificati AutomationElement e memorizza nella cache le proprietà e i modelli.

GetNextSibling(AutomationElement)

Recupera l'elemento di pari livello successivo dell'oggetto specificato AutomationElement.

Commenti

Un AutomationElement oggetto può avere elementi di pari livello aggiuntivi che non corrispondono alla condizione di visualizzazione corrente e pertanto non vengono restituiti durante lo spostamento nell'albero degli elementi.

La struttura dell'albero AutomationElement cambia man mano che cambiano gli elementi dell'interfaccia utente visibile sul desktop. Non è garantito che un elemento restituito come elemento di pari livello successivo verrà restituito come successivo elemento di pari livello nei passaggi successivi.

GetNextSibling(AutomationElement, CacheRequest)

Recupera l'elemento di pari livello successivo delle proprietà e dei modelli specificati AutomationElement e memorizza nella cache le proprietà e i modelli.

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

Parametri

element
AutomationElement

Elemento da cui recuperare l'elemento di pari livello successivo.

request
CacheRequest

Oggetto richiesta cache che specifica proprietà e modelli nell'oggetto restituito AutomationElement nella cache.

Valori restituiti

Elemento di pari livello successivo o riferimento Null (Nothing in Visual Basic) se tale elemento non è presente.

Commenti

Un AutomationElement oggetto può avere elementi di pari livello aggiuntivi che non corrispondono alla condizione di visualizzazione corrente e pertanto non vengono restituiti durante lo spostamento nell'albero degli elementi.

La struttura dell'albero AutomationElement cambia man mano che cambiano gli elementi dell'interfaccia utente visibile sul desktop. Non è garantito che un elemento restituito come elemento di pari livello successivo verrà restituito come successivo elemento di pari livello nei passaggi successivi.

Vedi anche

Si applica a

GetNextSibling(AutomationElement)

Recupera l'elemento di pari livello successivo dell'oggetto specificato AutomationElement.

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

Parametri

element
AutomationElement

Oggetto AutomationElement da cui recuperare l'elemento di pari livello successivo.

Valori restituiti

Elemento di pari livello successivo o riferimento Null (Nothing in Visual Basic) se tale elemento non è presente.

Esempio

Nell'esempio seguente viene illustrato GetNextSibling l'uso di per costruire una visualizzazione albero di elementi in un sottoalbero.

/// <summary>
/// Walks the UI Automation tree and adds the control type of each element it finds 
/// in the control view to a TreeView.
/// </summary>
/// <param name="rootElement">The root of the search on this iteration.</param>
/// <param name="treeNode">The node in the TreeView for this iteration.</param>
/// <remarks>
/// This is a recursive function that maps out the structure of the subtree beginning at the
/// UI Automation element passed in as rootElement on the first call. This could be, for example,
/// an application window.
/// CAUTION: Do not pass in AutomationElement.RootElement. Attempting to map out the entire subtree of
/// the desktop could take a very long time and even lead to a stack overflow.
/// </remarks>
private void WalkControlElements(AutomationElement rootElement, TreeNode treeNode)
{
    // Conditions for the basic views of the subtree (content, control, and raw) 
    // are available as fields of TreeWalker, and one of these is used in the 
    // following code.
    AutomationElement elementNode = TreeWalker.ControlViewWalker.GetFirstChild(rootElement);

    while (elementNode != null)
    {
        TreeNode childTreeNode = treeNode.Nodes.Add(elementNode.Current.ControlType.LocalizedControlType);
        WalkControlElements(elementNode, childTreeNode);
        elementNode = TreeWalker.ControlViewWalker.GetNextSibling(elementNode);
    }
}
''' <summary>
''' Walks the UI Automation tree and adds the control type of each element it finds 
''' in the control view to a TreeView.
''' </summary>
''' <param name="rootElement">The root of the search on this iteration.</param>
''' <param name="treeNode">The node in the TreeView for this iteration.</param>
''' <remarks>
''' This is a recursive function that maps out the structure of the subtree beginning at the
''' UI Automation element passed in as rootElement on the first call. This could be, for example,
''' an application window.
''' CAUTION: Do not pass in AutomationElement.RootElement. Attempting to map out the entire subtree of
''' the desktop could take a very long time and even lead to a stack overflow.
''' </remarks>
Private Sub WalkControlElements(ByVal rootElement As AutomationElement, ByVal treeNode As TreeNode)
    ' Conditions for the basic views of the subtree (content, control, and raw) 
    ' are available as fields of TreeWalker, and one of these is used in the 
    ' following code.
    Dim elementNode As AutomationElement = TreeWalker.ControlViewWalker.GetFirstChild(rootElement)

    While (elementNode IsNot Nothing)
        Dim childTreeNode As TreeNode = treeNode.Nodes.Add(elementNode.Current.ControlType.LocalizedControlType)
        WalkControlElements(elementNode, childTreeNode)
        elementNode = TreeWalker.ControlViewWalker.GetNextSibling(elementNode)
    End While

End Sub

Commenti

Un AutomationElement oggetto può avere elementi di pari livello aggiuntivi che non corrispondono alla condizione di visualizzazione corrente e pertanto non vengono restituiti durante lo spostamento nell'albero degli elementi.

La struttura dell'albero AutomationElement cambia man mano che cambiano gli elementi dell'interfaccia utente visibile sul desktop. Non è garantito che un elemento restituito come elemento di pari livello successivo verrà restituito come successivo elemento di pari livello nei passaggi successivi.

Vedi anche

Si applica a