Editores abertos para documentos abertos

Antes de um projeto abrir uma janela de documento, o projeto primeiro deve determinar se o arquivo já está aberto na janela de documento para outro editor. O arquivo pode ser aberto em um editor específico do projeto ou um dos editores padrão registrados com o Visual Studio.

Abrir um editor específico do projeto

Use o procedimento a seguir para abrir um editor específico do projeto para um arquivo que já está aberto.

Para abrir um editor específico do projeto para um arquivo aberto

  1. Chame o método IsDocumentOpen .

    Essa chamada retorna ponteiros para a hierarquia, o item de hierarquia e o quadro de janela do documento, se apropriado.

  2. Se o documento estiver aberto, o projeto deverá verificar se existe apenas um objeto de dados de documento ou se um objeto de exibição de documento também está presente.

    • Se existir um objeto de exibição de documento e esse modo de exibição for para uma hierarquia ou item de hierarquia diferente, o projeto usará o ponteiro para o quadro da janela do modo de exibição para ressurgir a janela existente.

    • Se existir um objeto de exibição de documento e esse modo de exibição for para o mesmo item de hierarquia e hierarquia, o projeto poderá abrir um segundo modo de exibição se puder anexar ao objeto de dados de documento subjacente. Caso contrário, o projeto deve usar o ponteiro para a moldura da janela do modo de exibição para ressurgir a janela existente.

    • Se apenas o objeto de dados do documento existir, o projeto deverá determinar se ele pode usar o objeto de dados do documento para sua exibição. Se o objeto de dados do documento for compatível, conclua as etapas discutidas em Abrir um editor específico do projeto.

      Se o objeto de dados do documento não for compatível, um erro deverá ser exibido ao usuário indicando que o arquivo está em uso no momento. Esse erro só deve ser exibido em casos transitórios, como quando um arquivo está sendo compilado ao mesmo tempo em que o usuário está tentando abrir o arquivo usando um editor diferente do editor de texto principal do Visual Studio. O editor de texto principal pode compartilhar o objeto de dados do documento com o compilador.

  3. Se o documento não estiver aberto porque não há nenhum objeto de dados de documento ou objeto de exibição de documento, conclua as etapas em Abrir um editor específico do projeto.

Abrir um editor padrão

Use o procedimento a seguir para abrir um editor padrão para um arquivo que já está aberto.

Para abrir um editor padrão para um arquivo aberto

  1. Chame OpenStandardEditor.

    Esse método primeiro verifica se o documento ainda não está aberto chamando IsDocumentOpen. Se o documento já estiver aberto, sua janela do editor será ressurgida.

  2. Se o documento não estiver aberto, conclua as etapas em Como: Abrir editores padrão.