Udostępnij za pośrednictwem


EditorFactory.CreateEditorInstance Metoda

Definicja

Ta metoda sprawdza, czy określony plik jest plikiem, który obsługuje edytor, a jeśli tak, tworzy podstawowy edytor tekstów i skojarzył z nim usługę językową. Aby ustalić, czy plik jest plikiem, który obsługuje edytor, wykonuje następujące sprawdzenie:

Jeśli to wszystko jest prawdziwe, następnym krokiem jest pobranie buforu IVsTextLines i skonfigurowanie go w następujący sposób:

Na koniec wywołuje element CreateEditorView, aby utworzyć widok docView.

public:
 virtual int CreateEditorInstance(System::UInt32 createDocFlags, System::String ^ moniker, System::String ^ physicalView, Microsoft::VisualStudio::Shell::Interop::IVsHierarchy ^ pHier, System::UInt32 itemid, IntPtr existingDocData, [Runtime::InteropServices::Out] IntPtr % docView, [Runtime::InteropServices::Out] IntPtr % docData, [Runtime::InteropServices::Out] System::String ^ % editorCaption, [Runtime::InteropServices::Out] Guid % cmdUI, [Runtime::InteropServices::Out] int % cancelled);
public virtual int CreateEditorInstance (uint createDocFlags, string moniker, string physicalView, Microsoft.VisualStudio.Shell.Interop.IVsHierarchy pHier, uint itemid, IntPtr existingDocData, out IntPtr docView, out IntPtr docData, out string editorCaption, out Guid cmdUI, out int cancelled);
abstract member CreateEditorInstance : uint32 * string * string * Microsoft.VisualStudio.Shell.Interop.IVsHierarchy * uint32 * nativeint * nativeint * nativeint * string * Guid * int -> int
override this.CreateEditorInstance : uint32 * string * string * Microsoft.VisualStudio.Shell.Interop.IVsHierarchy * uint32 * nativeint * nativeint * nativeint * string * Guid * int -> int
Public Overridable Function CreateEditorInstance (createDocFlags As UInteger, moniker As String, physicalView As String, pHier As IVsHierarchy, itemid As UInteger, existingDocData As IntPtr, ByRef docView As IntPtr, ByRef docData As IntPtr, ByRef editorCaption As String, ByRef cmdUI As Guid, ByRef cancelled As Integer) As Integer

Parametry

createDocFlags
UInt32

Flagi definiujące warunki tworzenia edytora podstawowego.

moniker
String

Postać ciągu identyfikatora moniker dokumentu w systemie projektu. W przypadku dokumentów, które są plikami, jest to zawsze ścieżka do pliku. Tego parametru można również użyć do określenia dokumentów, które nie są plikami. Na przykład w projekcie zorientowanym na bazę danych ten parametr może zawierać ciąg odwołujący się do rekordów w tabeli.

physicalView
String

Nazwa widoku fizycznego.

pHier
IVsHierarchy

Obiekt IVsHierarchy.

itemid
UInt32

Identyfikator elementu wystąpienia edytora podstawowego.

existingDocData
IntPtr

nativeint

Musi być obiektem docData zarejestrowanym w tabeli uruchomionych dokumentów (RDT). Ten parametr służy do określania, czy bufor dokumentu (obiekt danych dokumentu) został już utworzony. Gdy zostanie wyświetlona prośba o utworzenie widoku pomocniczego przez fabrykę edytora, ten parametr nie będzieNULL wskazywać, że nie ma buforu dokumentu.

docView
IntPtr

nativeint

Obiekt Widoku dokumentu. Zwraca wartość NULL , jeśli istnieje edytor zewnętrzny, w przeciwnym razie zwraca widok dokumentu.

docData
IntPtr

nativeint

Obiekt Document Data (Dane dokumentu). Zwraca bufor dla dokumentu.

editorCaption
String

Początkowe podpis zdefiniowane przez edytor dokumentów dla okna dokumentu. Zazwyczaj jest to ciąg ujęta w nawiasy kwadratowe, takie jak "[Form]". Ta wartość jest przekazywana jako parametr wejściowy do CreateDocumentWindow(UInt32, String, IVsUIHierarchy, UInt32, IntPtr, IntPtr, Guid, String, Guid, IServiceProvider, String, String, Int32[], IVsWindowFrame) metody . Jeśli plik ma wartość [ReadOnly], podpis zostanie ustawiona podczas ładowania pliku.

cmdUI
Guid

Zwraca identyfikator GUID interfejsu użytkownika polecenia. Ten identyfikator GUID jest aktywny po aktywowaniu tego edytora. Każdy element interfejsu użytkownika widoczny w edytorze musi używać tego identyfikatora GUID. Ten identyfikator GUID jest używany w pliku ctc w satelitarnej bibliotece DLL, gdzie wskazuje, które menu i paski narzędzi powinny być wyświetlane, gdy dokument jest aktywny.

cancelled
Int32

Wyliczenie typu __VSEDITORCREATEDOCWIN. Te flagi są przekazywane do CreateDocumentWindow(UInt32, String, IVsUIHierarchy, UInt32, IntPtr, IntPtr, Guid, String, Guid, IServiceProvider, String, String, Int32[], IVsWindowFrame) metody. Ta wartość jest ustawiona na 0 wartość w implementacji EditorFactory .

Zwraca

Jeśli metoda powiedzie się, zwraca wartość S_OK. Jeśli nie powiedzie się, zwraca kod błędu.

Implementuje

Uwagi

Aby zapoznać się z przykładem użycia tej metody, zobacz Przewodnik: tworzenie edytora podstawowego i rejestrowanie typu pliku edytora.

Dotyczy