Hierarchie w programie Visual Studio
Zintegrowane środowisko projektowe (IDE) programu Visual Studio wyświetla projekt jako hierarchię. W środowisku IDE hierarchia jest drzewem węzłów, w którym każdy węzeł ma zestaw skojarzonych właściwości. Hierarchia projektu to kontener, który zawiera elementy projektu, relacje elementów i skojarzone właściwości i polecenia elementów.
W programie Visual Studio zarządzasz hierarchiami projektów przy użyciu interfejsu hierarchii . IVsHierarchy Interfejs IVsUIHierarchy przekierowuje polecenia wywoływane z elementów projektu do odpowiedniego okna hierarchii zamiast standardowego programu obsługi poleceń.
Hierarchie projektów
Każda hierarchia projektu zawiera elementy, które można wyświetlać i edytować. Te elementy różnią się w zależności od typu projektu. Na przykład projekt bazy danych może zawierać procedury składowane, widoki bazy danych i tabele bazy danych. Z drugiej strony projekt języka programowania będzie zawierać pliki źródłowe i pliki zasobów dla map bitowych i okien dialogowych. Hierarchie można zagnieżdżać, co zapewnia dodatkową elastyczność podczas tworzenia hierarchii projektu.
Podczas tworzenia nowego typu projektu typ projektu steruje kompletnym zestawem elementów, które mogą być w nim edytowane. Jednak projekty mogą zawierać elementy, dla których nie mają obsługi edycji. Na przykład projekty Visual C++ mogą zawierać pliki HTML, mimo że język Visual C++ nie udostępnia żadnego dostosowanego edytora dla typu pliku HTML.
Hierarchie zarządzają trwałością elementów, które zawierają. Implementacja hierarchii musi kontrolować wszelkie właściwości specjalne, które mają wpływ na trwałość elementów w hierarchii. Jeśli na przykład elementy reprezentują obiekty w repozytorium zamiast plików, implementacja hierarchii musi kontrolować trwałość tych obiektów. Samo środowisko IDE kieruje hierarchię w celu zapisania elementów zgodnie z danymi wejściowymi użytkownika, ale środowisko IDE nie kontroluje żadnych akcji wymaganych do zapisania tych elementów. Zamiast tego projekt jest w kontrolce.
Gdy użytkownik otworzy element w edytorze, hierarchia, która kontroluje ten element, zostanie wybrana i stanie się aktywną hierarchią. Wybrana hierarchia określa zestaw poleceń dostępnych do działania na elemencie. Śledzenie fokusu użytkownika w ten sposób umożliwia hierarchię odzwierciedlania bieżącego kontekstu użytkownika.