Partilhar via


Método IVsProjectSpecificEditorMap2.GetSpecificEditorProperty (String, Int32, Object)

 

Obtém propriedades relacionadas a editores específicos do projeto e o Abrir com caixa de diálogo.

Namespace:   Microsoft.VisualStudio.Shell.Interop
Assembly:  Microsoft.VisualStudio.Shell.Interop (em Microsoft.VisualStudio.Shell.Interop.dll)

Sintaxe

int GetSpecificEditorProperty(
    string pszMkDocument,
    int propid,
    out object pvar
)
int GetSpecificEditorProperty(
    String^ pszMkDocument,
    int propid,
    [OutAttribute] Object^% pvar
)
abstract GetSpecificEditorProperty : 
        pszMkDocument:string *
        propid:int *
        pvar:Object byref -> int
Function GetSpecificEditorProperty (
    pszMkDocument As String,
    propid As Integer,
    <OutAttribute> ByRef pvar As Object
) As Integer

Parâmetros

  • pszMkDocument
    [in] Formulário do identificador exclusivo do identificador de origem do documento em seqüência no sistema de projeto.
  • pvar
    [out, retval] Ponteiro para uma VARIANTE contendo o valor da propriedade.

Valor de retorno

Type: System.Int32

Se o método for bem-sucedido, ele retorna S_OK.Se ele falhar, ele retorna um código de erro.

Comentários

COM assinatura

De vsshell.idl:

HRESULT IVsProjectSpecificEditorMap2::GetSpecificEditorProperty(
   [in] LPCOLESTR pszMkDocument,
   [in] VSPSEPROPID propid,
   [out, retval] VARIANT *pvar
);

Se você oferecer suporte a VSPSEPROPID_UseGlobalEditorByDefault propriedade e retorno de true, e em seguida, o editor global é usado por padrão.Se false, e em seguida, um editor específico do projeto é usado por padrão.Se você oferecer suporte a essa propriedade, então é adicionar uma entrada de "< editor padrão do projeto >" para o Abrir com caixa de diálogo.Essa entrada é sempre colocada na parte superior a Abrir com caixa de diálogo.Para definir essa seqüência de caracteres a ser algo diferente de "< editor padrão do projeto >", suporte a IVsProjectSpecificEditorMap::GetSpecificEditorProperty (VSPSEPROPID_ProjectDefaultEditorName).A definição dessa propriedade é opcional.

O projeto é esperado para persistir (em uma base de tipo de arquivo por usuário/por-máquina / no registro em HKEY_CURRENTUSER) se o editor padrão global ou o editor específicas do projeto deve ser usado.O projeto usa essas informações para saber se a chamada OpenStandardEditor ou OpenSpecificEditor ao abrir um item de projeto.

Este é um cenário complicado, você pode realizar com essa abordagem.Você tem um sistema de projeto que tenha um tratamento especial para arquivos XML.Ou seja, o sistema do projeto fornece uma experiência de edição especial para arquivos XML.O usuário pode escolher entre usando o editor (projeto preferencial) especial para arquivos XML ou usando o editor definido globalmente.O usuário optar por abrir o arquivo XML no editor de texto.Para fazer isso, eles definiram o editor de texto como o editor padrão no Abrir com caixa de diálogo.Subseqüentemente, quando um usuário clica duas vezes em um arquivo xml no projeto, o editor de texto abre o arquivo.

Posteriormente, o usuário vai para outro projeto (por exemplo, o projeto Miscellaneous Files), clica com o botão direito no arquivo e define o editor de XML como o editor padrão para arquivos xml.Se o usuário retorna para o projeto original e clica duas vezes no arquivo xml, o arquivo agora abre no editor XML em vez do editor de texto.No entanto, se o usuário originalmente tinha decidido que o sistema do projeto deve usar o editor XML por padrão, em seguida, independentemente de qual editor é definido como o editor de global em outro lugar, os arquivos xml do que projeto poderia ser aberto usando o editor de projeto específico, o que foi definido como o editor padrão para o projeto.Tanto o VB e os sistemas de projeto C# fornecem editores especiais para vários tipos de arquivos.

Consulte também

Interface IVsProjectSpecificEditorMap2
Namespace Microsoft.VisualStudio.Shell.Interop

Retornar ao topo