UIHierarchy, interface
Représente les fenêtres Outil standard dans l'environnement de développement intégré (IDE, Integrated Development Environment) qui utilisent des arborescences hiérarchiques de données, comme l'Explorateur de solutions, l'Explorateur de serveurs et l'Explorateur de macros.
Espace de noms : EnvDTE
Assembly : EnvDTE (dans EnvDTE.dll)
Syntaxe
'Déclaration
<GuidAttribute("72A2A2EF-C209-408C-A377-76871774ADB7")> _
Public Interface UIHierarchy
[GuidAttribute("72A2A2EF-C209-408C-A377-76871774ADB7")]
public interface UIHierarchy
[GuidAttribute(L"72A2A2EF-C209-408C-A377-76871774ADB7")]
public interface class UIHierarchy
[<GuidAttribute("72A2A2EF-C209-408C-A377-76871774ADB7")>]
type UIHierarchy = interface end
public interface UIHierarchy
Le type UIHierarchy expose les membres suivants.
Propriétés
Nom | Description | |
---|---|---|
DTE | Obtient l'objet d'extensibilité de niveau supérieur. | |
Parent | Obtient l'objet parent immédiat d'un objet UIHierarchy. | |
SelectedItems | Obtient une collection de tous les éléments actuellement sélectionnés. | |
UIHierarchyItems | Obtient une collection représentant les enfants de l'élément. |
Début
Méthodes
Nom | Description | |
---|---|---|
DoDefaultAction | Exécute dans l'arborescence la même action qu'un double-clic ou que la touche ENTRÉE. | |
GetItem | Obtient l'élément désigné par un chemin d'accès donné. | |
SelectDown | Sélectionne le nœud situé immédiatement en dessous du nœud sélectionné, selon l'état de développement de l'arborescence. | |
SelectUp | Sélectionne le nœud situé immédiatement au-dessus du nœud sélectionné, selon l'état de développement de l'arborescence. |
Début
Notes
L'objet UIHierarchy fournit un modèle objet commun pour les fenêtres Outil standard qui présentent les données hiérarchiques sous forme d'arborescence.Vous pouvez sélectionner des éléments quel que soit l'état de développement de l'arborescence.Si vous sélectionnez un élément qui n'apparaît pas dans l'arborescence en cours, celle-ci se développe de manière à l'afficher.
Vous pouvez obtenir cet objet en appliquant Window.Object à n'importe quelle fenêtre Outil standard de l'arborescence.
Étant donné que l'objet UIHierarchy représente toute fenêtre de type arborescence, il s'agit d'un objet Window.Sa propriété UIHierarchyItems retourne la collection de nœuds de niveau supérieur de la fenêtre spécifiée.Dans l'Explorateur de solutions, il y a un seul nœud de niveau supérieur, la solution.Dans l'Explorateur de macros, il y a également un seul nœud de niveau supérieur, le nœud Macros.De ce fait, les nœuds de projets ne se trouvent pas dans la collection UIHierarchyItems de la fenêtre, mais dans la collection du nœud de niveau supérieur.
Sachant cela, il existe deux moyens d'accéder à un nœud particulier (UIHierarchyItem) :
Utilisez la méthode GetItem pour référencer directement le nœud souhaité.
Utilisez UIHierarchyItems.Item.UIHierarchyItems... (une collection/élément/collection...modèle).
Pour descendre davantage dans la hiérarchie d'un nœud, continuez à utiliser ce modèle.Par exemple, pour atteindre le deuxième nœud placé sous le nœud de niveau supérieur, vous pouvez utiliser UIHierarchy.UIHierarchyItems.Item(1).UIHierarchyItems.Item(2).
Vous trouverez ci-dessous des exemples d'utilisation de ces deux techniques pour accéder à un nœud de niveau inférieur.
Exemples
Cet exemple utilise la méthode GetItem pour accéder à un nœud dans un objet UIHierarchy.
Sub UIHierarchyExample1()
'Reference the UIHierarchy, UIHierarchyItem, and OutputWindow objects.
Dim UIH As UIHierarchy = _
DTE.Windows.Item(Constants.vsWindowKindMacroExplorer).Object
Dim samples As UIHierarchyItem = UIH.GetItem("Macros\Samples")
Dim OWPane As OutputWindowPane = GetOutputWindowPane("List Macros")
Dim file As UIHierarchyItem
OWPane.Clear()
For Each file In samples.UIHierarchyItems
OWPane.OutputString(file.Name & _
Microsoft.VisualBasic.Constants.vbCrLf)
Dim macro As UIHierarchyItem
For Each macro In file.UIHierarchyItems
OWPane.OutputString(" " & macro.Name & _
Microsoft.VisualBasic.Constants.vbCrLf)
Next
Next
End Sub
Function GetOutputWindowPane(ByVal Name As String, Optional ByVal show _
As Boolean = True) As OutputWindowPane
Dim win As Window = _
DTE.Windows.Item(EnvDTE.Constants.vsWindowKindOutput)
If show Then win.Visible = True
Dim ow As OutputWindow = win.Object
Dim owpane As OutputWindowPane
Try
owpane = ow.OutputWindowPanes.Item(Name)
Catch e As System.Exception
owpane = ow.OutputWindowPanes.Add(Name)
End Try
owpane.Activate()
Return owpane
End Function
Cet exemple utilise la méthode UIHierarchyItems.Item.UIHierarchyItems pour accéder à un nœud dans un objet UIHierarchy.
Sub UIHierarchyExample2()
Dim UIH As UIHierarchy = _
DTE.Windows.Item(Constants.vsWindowKindMacroExplorer).Object
' Set a reference to the "Samples" node in Macro Explorer. The
' collections are one-based.
Dim UIHItem As UIHierarchyItem = _
UIH.UIHierarchyItems.Item(1).UIHierarchyItems.Item(2)
Dim file As UIHierarchyItem
Dim OWPane As OutputWindowPane = GetOutputWindowPane("List Macros")
For Each file In UIHItem.UIHierarchyItems
OWPane.OutputString(file.Name & _
Microsoft.VisualBasic.Constants.vbCrLf)
Dim macro As UIHierarchyItem
For Each macro In file.UIHierarchyItems
OWPane.OutputString(" " & macro.Name & _
Microsoft.VisualBasic.Constants.vbCrLf)
Next
Next
End Sub
Voir aussi
Référence
Autres ressources
Comment : manipuler des arborescences à l'aide de l'objet UIHierarchy