IVsProject4.OpenItem(UInt32, Guid, IntPtr, IVsWindowFrame) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Abre um item no projeto.
public:
int OpenItem(System::UInt32 itemid, Guid % rguidLogicalView, IntPtr punkDocDataExisting, [Runtime::InteropServices::Out] Microsoft::VisualStudio::Shell::Interop::IVsWindowFrame ^ % ppWindowFrame);
public int OpenItem (uint itemid, ref Guid rguidLogicalView, IntPtr punkDocDataExisting, out Microsoft.VisualStudio.Shell.Interop.IVsWindowFrame ppWindowFrame);
abstract member OpenItem : uint32 * Guid * nativeint * IVsWindowFrame -> int
Public Function OpenItem (itemid As UInteger, ByRef rguidLogicalView As Guid, punkDocDataExisting As IntPtr, ByRef ppWindowFrame As IVsWindowFrame) As Integer
Parâmetros
- itemid
- UInt32
no Identificador do item a ser aberto. Deve ser VSITEMID_ROOT ou outro identificador de item válido. Consulte a VSITEMID enumeração.
- rguidLogicalView
- Guid
no Identificador exclusivo da exibição lógica. Se não for GUID_NULL, indica um tipo específico de exibição a ser criado. Para obter mais informações, veja LOGVIEWID.
- punkDocDataExisting
- IntPtr
no Ponteiro para o objeto de dados de documento do item a ser aberto. Se o chamador de OpenItem tiver um ponteiro para o objeto de dados do documento, ele o passaria no punkDocDataExisting parâmetro. Se o chamador soubesse que o objeto de dados do documento não estava aberto, ele passaria null . Se o chamador não soubesse se o objeto de dados do documento estava aberto ou se ele não desejasse procurar na tabela de documentos em execução (RDT) para descobrir, ele poderia passar DOCDATAEXISTING_UNKNOWN se esse valor for passado e, em seguida, OpenStandardEditor(UInt32, String, Guid, String, IVsUIHierarchy, UInt32, IntPtr, IServiceProvider, IVsWindowFrame) procurará o valor no RDT chamando FindAndLockDocument(UInt32, String, IVsHierarchy, UInt32, IntPtr, UInt32) (RDT_EditLock) para determinar se o arquivo (objeto de dados de documento) já está aberto.
- ppWindowFrame
- IVsWindowFrame
fora Ponteiro para a IVsWindowFrame interface.
Retornos
Se o método for bem-sucedido, retornará S_OK. Se falhar, retornará um código de erro.
Implementações
Comentários
Assinatura COM
De VSShell. idl:
HRESULT IVsProject3::OpenItem(
[in] VSITEMID itemid,
[in] REFGUID rguidLogicalView,
[in] IUnknown *punkDocDataExisting,
[out] IVsWindowFrame **ppWindowFrame
);
Ao implementar IVsProjectSpecificEditorMap2 a interface em seu objeto de projeto, você pode manipular os arquivos específicos do projeto. Ou seja, você pode dar suporte à abertura do arquivo em um editor específico do projeto ou ao permitir que o editor global Abra o item. A abertura de um item requer a inicialização de um editor usando OpenStandardEditor OpenSpecificEditor o ou o, dependendo da manipulação que você deseja implementar. Para obter mais informações, consulte GetSpecificEditorProperty.
Observação
Na sua implementação do OpenItem , não chame Show no quadro da janela retornado ppWindowFrame .
Comparar com o ReopenItem método.