Criação de Designers e editores de texto personalizado
O ambiente de desenvolvimento integrado (IDE) do Visual Studio pode hospedar diferentes tipos de editor:
O editor de núcleo Visual Studio
Editores personalizados
Editores externos
Designers
As informações a seguir o ajudará a escolher o tipo de editor que você precisa.
Tipos de Editor
Para obter informações sobre o editor de núcleo de Visual Studio, consulte Estendendo o Editor.
Editores personalizados
Um editor personalizado é aquele que foi projetado para funcionar em casos especializados. Por exemplo, você pode criar um editor cuja função é ler e gravar dados em um repositório específico, como, por exemplo, um servidor Microsoft Exchange. Se você quiser que um editor que funciona com apenas o tipo de projeto ou se desejar que um editor que possui apenas alguns comandos específicos, escolha um editor personalizado. Observe, Entretanto, que os usuários não poderão usar um editor personalizado para editar o padrão Visual Studio projetos.
Um editor personalizado pode usar uma fábrica de editor e adicionar informações sobre o editor do registro. No entanto, o tipo de projeto associado com o editor personalizado pode instanciar o editor personalizado de outras maneiras.
Um editor personalizado pode usar a ativação in-loco ou incorporação simplificado para implementar um modo de exibição.
Editores externos
Editores externos são editores que não são integrados a Visual Studio, como o Microsoft Word, o bloco de notas ou o Microsoft FrontPage. Se, por exemplo, você está passando o texto a ele de seu VSPackage, você pode chamar tal um editor. Editores externos se registrem e podem ser usados fora de Visual Studio. Quando você chamar um editor externo e pode ser incorporado em uma janela de host, ele aparece em uma janela no IDE. Caso contrário, o IDE criará uma janela separada para ele.
O IsDocumentInProject método define a prioridade do documento usando o VSDOCUMENTPRIORITY enumeração. Se a DP_External valor for especificado, o arquivo pode ser aberto por um editor externo.
Decisões de Design do Editor
As questões de design a seguir o ajudará a escolher o tipo de editor melhor adequado para seu aplicativo:
Seu aplicativo salvará seus dados em arquivos ou não? Se ele irá salvar seus dados em arquivos, eles serão em um formato padrão ou personalizado?
Se você usar um formato de arquivo padrão, outros tipos de projeto, além de ao seu projeto será capazes de abrir e ler/gravar dados a eles. Se você usar um formato de arquivo personalizado, no entanto, apenas o tipo de projeto será capaz de abrir e ler/gravar dados a eles.
Se o seu projeto utiliza arquivos, você deve personalizar o editor padrão. Se seu projeto não usa arquivos, mas em vez disso, usa itens em um banco de dados ou outro repositório, você deve criar um editor personalizado.
O seu editor precisa hospedar controles de ActiveX?
Se o seu editor de hospedar controles de ActiveX, em seguida, implementar um editor de ativação no local, conforme descrito no Ativação in-loco. Se ele não hospeda os controles de ActiveX, e use um editor de incorporação simplificado ou personalizar o Visual Studio editor padrão. Para mais informações, consulte: Document Windows and Editors.
O editor oferecerá suporte a vários modos de exibição? Se desejar que os modos de exibição do seu editor devem ficar visíveis ao mesmo tempo como o editor padrão, você deve suportar vários modos de exibição.
Se o seu editor de precisar dar suporte a vários modos de exibição, os dados do documento e os objetos de exibição de documento para o editor devem ser objetos separados. Para obter mais informações, consulte Suporte a vários modos de exibição de documento.
Se o editor suporta vários modos de exibição, você planeja usar o Visual Studio implementação do buffer de texto do editor do núcleo (VsTextBuffer objeto) para o objeto de dados do documento? Ou seja, você deseja oferecer suporte a seu editor view--lado a lado com o Visual Studio editor núcleo? A capacidade de fazer isso é a base do designer de formulários..
Se você precisar hospedar um editor externo, pode o editor ser incorporado dentro de Visual Studio?
Se ele pode ser incorporado, você deve criar uma janela de host para o editor externo e, em seguida, chamar o IsDocumentInProject método e o conjunto de VSDOCUMENTPRIORITY valor de enumeração para DP_External. Se o editor não pode ser incorporado, o IDE criará automaticamente uma janela separada para ele.
Nesta seção
Passo a passo: Criando um Editor personalizado
Explica como criar um editor personalizado.Passo a passo: Adicionando recursos para um Editor personalizado
Explica como adicionar recursos a um editor personalizado.Configuração de metadados e inicialização de Designer
Explica como inicializar um designer.Fornecendo suporte à função Desfazer para Designers
Explica como fornecer suporte à função Desfazer para designers.Cor de sintaxe no Custom Editors
Explica a diferença entre o no editor de núcleo e nos editores personalizados da coloração de sintaxe.Dados do documento e visualização de documentos em editores personalizados
Explica como implementar os dados do documento e modos de exibição de documento em editores personalizados.
Seções relacionadas
Acessando o Editor usando Interfaces de legado
Explica como acessar o editor de núcleo por meio da API herdada.Desenvolvimento de um serviço de linguagem
Explica como implementar um serviço de linguagem.Interfaces de usuário
Explica como criar elementos de interface do usuário que correspondam às demais Visual Studio.