Interfejs IVsParentProject
Zezwala na projekty zagnieżdżone do otwierania i zamykania we właściwej kolejności z kompilacji hierarchii roztwór przez środowisko naturalne.
Przestrzeń nazw: Microsoft.VisualStudio.Shell.Interop
Zestaw: Microsoft.VisualStudio.Shell.Interop (w Microsoft.VisualStudio.Shell.Interop.dll)
Składnia
[InterfaceTypeAttribute(1)]
[GuidAttribute("79001CD1-69C6-45B8-8F7A-DCCCE0469E8D")]
public interface IVsParentProject
[InterfaceTypeAttribute(1)]
[GuidAttribute("79001CD1-69C6-45B8-8F7A-DCCCE0469E8D")]
public interface class IVsParentProject
[<InterfaceTypeAttribute(1)>]
[<GuidAttribute("79001CD1-69C6-45B8-8F7A-DCCCE0469E8D")>]
type IVsParentProject = interface end
<InterfaceTypeAttribute(1)>
<GuidAttribute("79001CD1-69C6-45B8-8F7A-DCCCE0469E8D")>
Public Interface IVsParentProject
Metody
Nazwa | Opis | |
---|---|---|
CloseChildren() | Wdrożone w celu zamknięcia zagnieżdżonych projektów w ramach projektu nadrzędnego. |
|
OpenChildren() | Zaimplementowane otworzyć zagnieżdżonych projektów w ramach projektu nadrzędnego. |
Uwagi
IVsParentProjectzawiera dwie metody, OpenChildren i CloseChildren.Celem tego interfejsu jest Zezwalaj na projekty zagnieżdżone do otwierania i zamykania we właściwej kolejności z kompilacji hierarchii roztwór przez środowisko naturalne.Informacje odnoszące się do projekty zagnieżdżone są zawarte w pliku projektu dla każdego projektu nadrzędnego.
Realizacji metod powinny ognia, odpowiadające im IVsSolutionEvents3 zdarzeń - OnBeforeOpeningChildren i OnAfterOpeningChildren w OpenChildren metody i OnBeforeClosingChildren i OnAfterClosingChildren w CloseChildren metody.
Roztwór otwartego zamówienia jest następująca.
Dla każdego projektu najwyższego poziomu w roztworze:
Środowisko tworzy projektu, wywołując projektuCreateProject
Środowisko doda projekt do Solution Explorer.
Środowiska sprawdza, czy projekt jest projekt nadrzędny przez badanie hierarchii projektu dla IVsParentProject.
Jeśli program project obsługuje IVsParentProject, środowiska naturalnego wymaga projektu OpenChildren metody.Podczas tej metody pożary projektu OnBeforeOpeningChildreni dla każdego projektu (zagnieżdżonych) dziecka:
Wywołania projektu nadrzędnego AddVirtualProjectEx.
Pożary metoda OnAfterOpenProject dla projektu dziecka.
Środowiska sprawdza, jeśli projekt podrzędny jest również projekt nadrzędny przez badanie projektu podrzędnych hierarchii dla IvsParentProject.
Jeśli projekt podrzędny jest również projekt nadrzędny:
Wywołania środowiska jej OpenChildren.
Pożary projektu OnAfterOpeningChildren.
Pożary roztwór OnAfterOpenProject.
Pożary roztwór OnAfterOpenSolution (jeśli jest to rozwiązanie załadowaniu).
Kolejność ścisłej roztwór jest:
Dla każdego projektu najwyższego poziomu w roztworze środowiska wywołuje projektu QueryClose metody.W tej metodzie wywołuje projektu QueryClose na wszystkie jego elementy podrzędne.
Dla każdego projektu najwyższego poziomu w roztworze, pożary środowiska OnBeforeCloseProject dla projektu.
Dla każdego projektu najwyższego poziomu w roztworze środowiska sprawdza, jeśli projekt jest projekt nadrzędny w hierarchii projektu dla kwerendIVsParentProject
Dla każdego projektu najwyższego poziomu w roztworze, jeśli program project obsługuje IVsParentProject, wywołania środowiska CloseChildren.Podczas tej metody pożary projektu OnBeforeClosingChildreni dla każdego projektu (zagnieżdżonych) dziecka:
Wywołania projektu nadrzędnego RemoveVirtualProject.
Pożary metoda OnBeforeCloseProject dla projektu dziecka
Środowiska sprawdza, jeśli projekt podrzędny jest również projekt nadrzędny przez badanie projektu podrzędnych hierarchii dlaIVsParentProject
Jeśli projekt podrzędny jest również projekt nadrzędny:
Wywołania środowiska jej CloseChildren.
Środowisko wywołuje projektu dziecko Close.
Pożary projektu OnAfterClosingChildren.
Środowisko wywołuje projektu najwyższego poziomu Close.
Uwagi dotyczące implementacji:
Wdrożone przez projektami nadrzędnymi (projekty zagnieżdżanie innych projektów), do kontrolowania otwieranie i zamykanie projektów zagnieżdżonych (podrzędny).
Zobacz też
Przestrzeń nazw Microsoft.VisualStudio.Shell.Interop
Powrót do początku