EditorFactory.CreateEditorInstance Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
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.