Interfaccia UIHierarchy
Rappresenta le finestre degli strumenti standard dell'ambiente di sviluppo integrato (IDE) che utilizzano una struttura ad albero gerarchica di dati, come ad esempio Esplora soluzioni, Esplora server ed Esplora macro.
Spazio dei nomi: EnvDTE
Assembly: EnvDTE (in EnvDTE.dll)
Sintassi
'Dichiarazione
<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
Il tipo UIHierarchy espone i seguenti membri.
Proprietà
Nome | Descrizione | |
---|---|---|
DTE | Ottiene l'oggetto estensibilità di primo livello. | |
Parent | Ottiene l'oggetto padre diretto di un oggetto UIHierarchy. | |
SelectedItems | Ottiene l'insieme di tutti gli elementi correntemente selezionati. | |
UIHierarchyItems | Ottiene un insieme che rappresenta gli elementi figlio dell'elemento. |
In alto
Metodi
Nome | Descrizione | |
---|---|---|
DoDefaultAction | Esegue nella gerarchia l'azione equivalente al doppio clic o alla pressione del tasto INVIO. | |
GetItem | Ottiene l'elemento specificato dal percorso fornito. | |
SelectDown | Seleziona il nodo immediatamente al di sotto del nodo correntemente selezionato, relativamente allo stato di espansione corrente della struttura ad albero. | |
SelectUp | Seleziona il nodo immediatamente al di sopra del nodo correntemente selezionato, relativamente allo stato di espansione corrente della struttura ad albero. |
In alto
Note
L'oggetto UIHierarchy fornisce un modello a oggetti comune per le finestre degli strumenti standard che presentano dati gerarchici in visualizzazione struttura ad albero. È possibile selezionare gli elementi indipendentemente dallo stato di espansione della struttura ad albero degli elementi. Se si seleziona un elemento non visualizzato nell'espansione corrente della struttura ad albero, quest'ultima verrà espansa per visualizzare l'elemento.
È possibile visualizzare questo oggetto utilizzando Window.Object in una qualsiasi finestra degli strumenti standard con visualizzazione struttura ad albero.
Poiché l'oggetto UIHierarchy rappresenta una qualsiasi finestra con visualizzazione struttura ad albero, è un oggetto Window. La proprietà UIHierarchyItems restituisce l'insieme dei nodi di primo livello nella finestra specificata. In Esplora soluzioni esiste un solo nodo di primo livello, che corrisponde al nodo della soluzione. Anche in Esplora macro esiste un solo nodo di primo livello, che corrisponde al nodo delle macro. Questo significa che i nodi del progetto non si trovano nell'insieme UIHierarchyItems della finestra, bensì nell'insieme dei nodi di primo livello.
Tenendo presente quanto sopra riportato, vi sono due modi per accedere a un nodo particolare (UIHierarchyItem):
Mediante il metodo GetItem per fare direttamente riferimento al nodo desiderato.
Mediante UIHierarchyItems.Item.UIHierarchyItems..., un criterio per insieme/elemento/insieme ...).
Per passare all'interno della nidificazione dei nodi, continuare a utilizzare questo criterio. Per passare ad esempio al secondo nodo all'interno del nodo di primo livello, utilizzare UIHierarchy.UIHierarchyItems.Item(1).UIHierarchyItems.Item(2).
Di seguito vengono riportati alcuni esempi di utilizzo di entrambe le tecniche per accedere a un nodo di livello inferiore.
Esempi
In questo esempio viene utilizzata la strategia del metodo GetItem di accesso a un nodo in un oggetto 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
In questo esempio viene utilizzata la strategia UIHierarchyItems.Item.UIHierarchyItems per accedere a un nodo in un oggetto 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
Vedere anche
Riferimenti
Altre risorse
Procedura: modificare le visualizzazioni ad albero mediante UIHierarchy