EditorFactory.CreateEditorInstance Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Este método comprueba si el archivo especificado es el que admite el editor y, si es así, crea el editor de texto principal y asocia el servicio de idioma con él. Para averiguar si el archivo es el que el editor admite, realiza la comprobación siguiente:
Si todo esto es cierto, continúa con el siguiente paso, que consiste en obtener un búfer IVsTextLines y configurarlo de la siguiente manera:
Por último, llama a CreateEditorView para crear el 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
Parámetros
- createDocFlags
- UInt32
Marcas que definen las condiciones bajo las que crear el editor básico.
- moniker
- String
Forma de cadena del identificador de moniker del documento en el sistema del proyecto. En el caso de documentos que son archivos, siempre es la ruta de acceso al archivo. Este parámetro se puede usar también para especificar documentos que no son archivos. Por ejemplo, en un proyecto basado en la base de datos, este parámetro podría contener una cadena que haga referencia a los registros de una tabla.
- physicalView
- String
Nombre de la vista física.
- pHier
- IVsHierarchy
Objeto IVsHierarchy.
- itemid
- UInt32
Identificador del elemento de la instancia del editor básica.
- existingDocData
-
IntPtr
nativeint
[in] Debe ser el objeto docData
registrado en la tabla del documento en ejecución (RDT). Este parámetro se usa para determinar si un búfer de documento (objeto de datos de documento) ya se ha creado. Cuando se pide a un generador de editores que cree una vista secundaria, este parámetro será no NULL
para indicar que no hay ningún búfer de documentos.
- docView
-
IntPtr
nativeint
Objeto de vista del documento. Devuelve NULL
si existe un editor externo; de lo contrario, devuelve la vista del documento.
- docData
-
IntPtr
nativeint
Objeto de datos del documento. Devuelve el búfer para el documento.
- editorCaption
- String
Leyenda inicial definida por el editor del documento para la ventana de documento. Suele ser una cadena incluida entre corchetes, por ejemplo "[Formulario]". Este valor se pasa como parámetro de entrada al método CreateDocumentWindow(UInt32, String, IVsUIHierarchy, UInt32, IntPtr, IntPtr, Guid, String, Guid, IServiceProvider, String, String, Int32[], IVsWindowFrame). Si el archivo [solo lectura] la leyenda se establecerá durante la carga del archivo.
- cmdUI
- Guid
Devuelve el GUID de la interfaz de usuario de comandos. Este GUID se activa cuando se activa este editor. Cualquier elemento de interfaz de usuario que está visible en el editor tiene que usar este GUID. Este GUID se usa en el archivo .ctc del archivo DLL satélite donde indica qué menús y barras de herramientas deben mostrarse cuando el documento esté activo.
- cancelled
- Int32
Enumeración de tipo __VSEDITORCREATEDOCWIN. Estas marcas se pasan al método CreateDocumentWindow(UInt32, String, IVsUIHierarchy, UInt32, IntPtr,
IntPtr, Guid, String, Guid, IServiceProvider, String, String,
Int32[], IVsWindowFrame). Este valor está establecido en 0
en la implementación EditorFactory.
Devoluciones
Si el método se realiza correctamente, devuelve S_OK. Si se produce un error, devuelve un código de error.
Implementaciones
Comentarios
Para obtener un ejemplo de cómo usar este método, vea Tutorial: Creación de un editor principal y Registro de un tipo de archivo de editor.