Udostępnij za pośrednictwem


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
Właściwość publiczna DTE Pobiera obiekt rozszerzalności najwyższego poziomu.
Właściwość publiczna Parent Zwraca obiekt nadrzędny natychmiastowe z UIHierarchy obiektu.
Właściwość publiczna SelectedItems Zwraca kolekcję wszystkich aktualnie wybrane elementy.
Właściwość publiczna UIHierarchyItems Zwraca kolekcję reprezentujące elementy podrzędne elementu.

Początek

Metody

  Nazwa Opis
Metoda publiczna DoDefaultAction W hierarchii wykonuje tę samą akcję, jak gdyby użytkownik miał kliknięty dwukrotnie lub nacisnął klawisz ENTER.
Metoda publiczna GetItem Pobiera element wyznaczone przez biorąc pod uwagę ścieżki.
Metoda publiczna SelectDown Wybiera węzeł bezpośrednio poniżej aktualnie zaznaczony węzeł, w odniesieniu do drzewa bieżący stan rozszerzenia.
Metoda publiczna 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

Zobacz też

Informacje

Przestrzeń nazw EnvDTE

Inne zasoby

Jak: manipulować widoki drzewa przy użyciu UIHierarchy