Metoda IVsUIShellOpenDocument.IsSpecificDocumentViewOpen — (IVsUIHierarchy, UInt32, String, Guid, String, UInt32, IVsUIHierarchy, UInt32, IVsWindowFrame, Int32)
Określa, czy widok określony dokument jest otwarty.
Przestrzeń nazw: Microsoft.VisualStudio.Shell.Interop
Zestaw: Microsoft.VisualStudio.Shell.Interop (w Microsoft.VisualStudio.Shell.Interop.dll)
Składnia
int IsSpecificDocumentViewOpen(
IVsUIHierarchy pHierCaller,
uint itemidCaller,
string pszMkDocument,
[InAttribute] ref Guid rguidEditorType,
string pszPhysicalView,
uint grfIDO,
out IVsUIHierarchy ppHierOpen,
out uint pitemidOpen,
out IVsWindowFrame ppWindowFrame,
out int pfOpen
)
int IsSpecificDocumentViewOpen(
IVsUIHierarchy^ pHierCaller,
unsigned int itemidCaller,
String^ pszMkDocument,
[InAttribute] Guid% rguidEditorType,
String^ pszPhysicalView,
unsigned int grfIDO,
[OutAttribute] IVsUIHierarchy^% ppHierOpen,
[OutAttribute] unsigned int% pitemidOpen,
[OutAttribute] IVsWindowFrame^% ppWindowFrame,
[OutAttribute] int% pfOpen
)
abstract IsSpecificDocumentViewOpen :
pHierCaller:IVsUIHierarchy *
itemidCaller:uint32 *
pszMkDocument:string *
rguidEditorType:Guid byref *
pszPhysicalView:string *
grfIDO:uint32 *
ppHierOpen:IVsUIHierarchy byref *
pitemidOpen:uint32 byref *
ppWindowFrame:IVsWindowFrame byref *
pfOpen:int byref -> int
Function IsSpecificDocumentViewOpen (
pHierCaller As IVsUIHierarchy,
itemidCaller As UInteger,
pszMkDocument As String,
<InAttribute> ByRef rguidEditorType As Guid,
pszPhysicalView As String,
grfIDO As UInteger,
<OutAttribute> ByRef ppHierOpen As IVsUIHierarchy,
<OutAttribute> ByRef pitemidOpen As UInteger,
<OutAttribute> ByRef ppWindowFrame As IVsWindowFrame,
<OutAttribute> ByRef pfOpen As Integer
) As Integer
Parametry
pHierCaller
Type: Microsoft.VisualStudio.Shell.Interop.IVsUIHierarchy[in] Identyfikator hierarchii obiektu wywołującego przekazane jako wskaźnik do obiektu wywołującego IVsUIHierarchy implementacji. Ten parametr jest używany przez implementację środowiska IsSpecificDocumentViewOpen Jeśli obiekt wywołujący określa wartość IDO_ActivateIfOpen dla grfIDO parametr...
itemidCaller
Type: System.UInt32[in] Identyfikator elementu hierarchii interfejsu użytkownika obiektu wywołującego. Używane z IDO_ActivateIfOpen. Aby uzyskać więcej informacji, zobacz VSITEMID.
pszMkDocument
Type: System.String[in] Ciąg formularza moniker Unikatowy identyfikator dokumentu w systemie projektu, na przykład Pełna ścieżka do pliku. W przypadku plików innych niż ten identyfikator jest często w postaci adresu URL.
rguidEditorType
Type: System.Guid[in] Identyfikator GUID fabryki edytora. Ta wartość, w połączeniu z pszPhysicalView służy do tworzenia Unikatowy identyfikator widoku określonego dokumentu.
pszPhysicalView
Type: System.String[in] Ciąg widok fizyczny. Ta wartość, w połączeniu z rguidEditorType, jest używany do tworzenia Unikatowy identyfikator widoku określonego dokumentu.
grfIDO
Type: System.UInt32[in] Flagi określające, jakie akcje są wykonywane na otwartym dokumencie. Aby uzyskać listę wartości, zobacz __VSIDOFLAGS.
ppHierOpen
Type: Microsoft.VisualStudio.Shell.Interop.IVsUIHierarchy[out] Jeśli pfOpen jest true, a następnie ten parametr jest wskaźnikiem do IVsUIHierarchy Implementacja IVsHierarchy do której należy widok. Jeśli pfOpen jest false, a następnie ten parametr jest null.
pitemidOpen
Type: System.UInt32[out] Jeśli jest pfOpen true, a następnie ten parametr jest wskaźnikiem do hierarchii identyfikator elementu interfejsu użytkownika Otwórz dokument, który jest reprezentowany przez określony widok. Jeśli pfOpen jest false, a następnie ten parametr jest null. Aby uzyskać więcej informacji, zobacz VSITEMID.
ppWindowFrame
Type: Microsoft.VisualStudio.Shell.Interop.IVsWindowFrame[out] Jeśli pfOpen jest true, a następnie ten parametr jest wskaźnikiem do IVsWindowFrame zawierających określony widok.
pfOpen
Type: System.Int32[out, retval] true Jeśli widok określony dokument jest otwarty.false Jeśli widok określony dokument nie jest otwarty.
Wartość zwracana
Type: System.Int32
Jeśli metoda zakończy się pomyślnie, zwraca S_OK. Jeśli nie, zwraca kod błędu.
Uwagi
Podpis COM
Z vsshell.idl:
HRESULT IVsUIShellOpenDocument::IsSpecificDocumentViewOpen(
[in] IVsUIHierarchy *pHierCaller,
[in] VSITEMID itemidCaller,
[in] LPCOLESTR pszMkDocument,
[in] REFGUID rguidEditorType,
[in] LPCOLESTR pszPhysicalView,
[in] VSIDOFLAGS grfIDO,
[out] IVsUIHierarchy **ppHierOpen,
[out] VSITEMID *pitemidOpen,
[out] IVsWindowFrame **ppWindowFrame,
[out, retval] BOOL *pfOpen
);
IsSpecificDocumentViewOpen pary hierarchii/itemID przyjmuje jako dane wejściowe, który identyfikuje obiekt wywołujący, który chce wiedzieć, czy widok jest otwarty. Widok określony dokument jest otwarty w IDE, ta metoda porównuje tę parę hierarchii/identyfikator elementu do pary hierarchii/itemID posiadającym otwartym dokumencie (czyli istnienia hierarchii), aby określić, czy różne hierarchie.
Jeśli w innej hierarchii jest widok dokumentu, Otwórz i implementuje tej hierarchii IVsSupportItemHandoff, a następnie IVsUIShellOpenDocument::IsSpecificDocumentViewOpen Implementacja wywołuje hierarchii IVsSupportItemHandoff implementacji i przekazuje para identyfikator hierarchii/elementu wywołującego hierarchii (pHierCaller/itemidCaller). Dokument jest następnie przekazane do wywoływania hierarchii. Jeśli hierarchia nie implementuje IVsSupportItemHandoff, a następnie okno komunikatu jest wyświetlana z następującym tekstem, "dokument jest otwarty przez innego projektu.", widok dokumentu nie są przenoszone do wywoływania hierarchii i istniejącego widoku dokumentu przeniesienia do przodu w kontekście istnienia hierarchii.
Zobacz też
Interfejs IVsUIShellOpenDocument
Przestrzeń nazw Microsoft.VisualStudio.Shell.Interop
Powrót do początku