Interfejs UIHierarchy
Reprezentuje standardowe narzędzie windows w zintegrowane środowisko programistyczne (IDE), używające hierarchiczne drzewa danych, takich jak Solution Explorer, Server Explorer, i Explorer makro.
Przestrzeń nazw: EnvDTE
Zestaw: EnvDTE (w EnvDTE.dll)
Składnia
'Deklaracja
<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
Typ UIHierarchy uwidacznia następujące elementy członkowskie.
Właściwości
Nazwa | Opis | |
---|---|---|
DTE | Pobiera obiekt rozszerzalności najwyższego poziomu. | |
Parent | Zwraca obiekt nadrzędny natychmiastowe z UIHierarchy obiektu. | |
SelectedItems | Zwraca kolekcję wszystkich aktualnie wybrane elementy. | |
UIHierarchyItems | Zwraca kolekcję reprezentujące elementy podrzędne elementu. |
Początek
Metody
Nazwa | Opis | |
---|---|---|
DoDefaultAction | W hierarchii wykonuje tę samą akcję, jak gdyby użytkownik miał kliknięty dwukrotnie lub nacisnął klawisz ENTER. | |
GetItem | Pobiera element wyznaczone przez biorąc pod uwagę ścieżki. | |
SelectDown | Wybiera węzeł bezpośrednio poniżej aktualnie zaznaczony węzeł, w odniesieniu do drzewa bieżący stan rozszerzenia. | |
SelectUp | Wybiera węzeł bezpośrednio powyżej aktualnie zaznaczony węzeł, w odniesieniu do drzewa bieżący stan rozszerzenia. |
Początek
Uwagi
UIHierarchy Obiektu przewiduje wspólne modelu obiektów standardowe narzędzia systemu windows, zawierającymi hierarchiczne danych w widoku drzewa.Można wybrać elementy, niezależnie od tego, czy element widoczny stan rozszerzenia drzewa.Zaznaczenie elementu, który nie jest widoczne w bieżącym ekspansji drzewa powoduje drzewa rozwinąć do wyświetlenia elementu.
Ten obiekt można uzyskać za pomocą Window.Object dla każdego okna narzędzia standardowe widoku drzewa.
Ponieważ UIHierarchy obiekt reprezentuje dowolnego okna typ widoku drzewa, to obiekt Window.Jego UIHierarchyItems właściwość zwraca kolekcję węzłów najwyższego poziomu w określonym oknie.W Solution Explorer, istnieje tylko jeden najwyższego poziomu węzeł, roztwór.W Explorer makro, również jest tylko jeden węzeł najwyższego poziomu węzła makra.Oznacza to, że węzły projektu nie są w tym oknie UIHierarchyItems kolekcji, ale raczej w kolekcji węzła najwyższego poziomu.
Mając to na uwadze, istnieją dwa sposoby dostępu do określonego węzła (UIHierarchyItem):
Użyj GetItem metoda bezpośrednio do żądanego węzła.
Użyj UIHierarchyItems.Item.UIHierarchyItems... (/ elementu/Kolekcja...deseń).
Do zagłębienia do zagnieżdżenia węzłów, nadal korzystać z tego wzorca.Na przykład, aby przejść do drugiego węzła w węźle najwyższego poziomu, należy użyć UIHierarchy.UIHierarchyItems.Item(1).UIHierarchyItems.Item(2).
Poniżej przedstawiono przykłady sposobów użycia obu technik do węzła niższego poziomu dostępu.
Przykłady
W tym przykładzie użyto GetItem strategii metoda uzyskiwania dostępu do węzłów w 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
W tym przykładzie użyto UIHierarchyItems.Item.UIHierarchyItems strategii dostępu do węzłów w 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