Os suplementos de nível de aplicativo de programação.
Quando você estender um aplicativo do Microsoft Office criando um suplemento ao aplicativo, você escreve o código diretamente na classe de ThisAddIn em seu projeto.Você pode usar esta classe para executar tarefas como acessar o modelo de objeto do aplicativo host do Microsoft Office, personalizar a interface de usuário (UI) do aplicativo, e a exposição de objetos no suplemento a outras soluções do Office.
Aplicável a: As informações neste tópico se aplicam a projetos em níveis de aplicativo o Microsoft Office 2013 e o Microsoft Office 2010. Para obter mais informações, consulte Recursos disponíveis pelo aplicativo do Office e o tipo de projeto.
Alguns aspectos de escrita de código em projetos de suplementos são diferentes de outros tipos de projetos no Visual Studio.Muitas de essas diferenças são causadas os modelos de objeto do Office são expostos a relação ao código gerenciado.Para obter mais informações, consulte Escrevendo código em soluções do Office.
Para obter informações gerais sobre o suplementos de aplicativo e outros tipos de soluções que você pode criar usando as ferramentas de desenvolvimento do Office no Visual Studio, consulte Visão geral de desenvolvimento de soluções do Office.
usando a classe de ThisAddIn
Você pode começar a escrita do código do suplemento na classe de ThisAddIn .O Visual Studio gera automaticamente essa classe no arquivo de código ThisAddIn.vb (em Visual Basic) ou de ThisAddIn.cs (em C#) no seu projeto do suplemento.Visual Studio Tools for Office Runtime cria uma instância de esta classe para você automaticamente quando o aplicativo do Microsoft Office carrega o suplemento.
Há dois manipuladores de eventos padrão na classe de ThisAddIn .Para executar o código quando o suplemento é carregado, adicione código ao manipulador de eventos de ThisAddIn_Startup .Para executar o código imediatamente antes do suplemento é descarregado, adicione código ao manipulador de eventos de ThisAddIn_Shutdown .Para obter mais informações sobre esses manipuladores de eventos, consulte Eventos em projetos do Office.
Observação |
---|
Em o Outlook, o manipulador de eventos de ThisAddIn_Shutdown não é sempre chamado por padrão quando o suplemento é descarregado.Para obter mais informações, consulte Eventos em projetos do Office. |
Acessando o modelo de objeto do aplicativo host
Para acessar o modelo de objeto do aplicativo host, use o campo de Application da classe de ThisAddIn .Este campo retorna um objeto que representa a instância atual do aplicativo host.A tabela a seguir lista o tipo do valor de retorno para o campo de Application em cada projeto do suplemento.
O aplicativo host |
tipo de valor de retorno |
---|---|
Microsoft Office Excel |
|
Microsoft Office InfoPath |
|
Microsoft Office Outlook |
|
Microsoft Office o PowerPoint |
|
Microsoft Office |
Microsoft.Office.Interop.MSProject.Application |
Microsoft Office Visio |
Microsoft.Office.Interop.Visio.Application |
Microsoft Office Word |
O exemplo de código a seguir mostra como usar o campo de Application para criar uma nova pasta de trabalho em um suplemento para o Microsoft Office Excel.Este exemplo destina-se a ser executado da classe de ThisAddIn .
Dim newWorkbook As Excel.Workbook = Me.Application.Workbooks.Add()
Excel.Workbook newWorkbook = this.Application.Workbooks.Add(System.Type.Missing);
Para fazer a mesma coisa fora da classe de ThisAddIn , use o objeto de Globals para acessar a classe de ThisAddIn .Para obter mais informações sobre o objeto de Globals , consulte Acesso global a objetos em projetos do Office.
Dim newWorkbook As Excel.Workbook = Globals.ThisAddIn.Application.Workbooks.Add()
Excel.Workbook newWorkbook = Globals.ThisAddIn.Application.Workbooks.Add(System.Type.Missing);
Para obter mais informações sobre modelos de objeto de aplicativos específicos do Microsoft Office, consulte os seguintes tópicos:
Acessando um documento quando o aplicativo for iniciado do Office
Nem todos os aplicativos de Office 2010 abre automaticamente um documento quando você começa o, e nenhum dos aplicativos de Office 2013 abrir um documento quando você começa o.Portanto, não adicionar o código no manipulador de eventos de ThisAdd-In_Startup se o código requer um documento ser aberto.Em vez de isso, adicione o código a um evento que o aplicativo do Office aumenta quando um usuário cria ou abre um documento.De essa forma, você pode garantir que um documento está aberto antes de seu código executar operações em ele.
O exemplo de código funciona com um documento em palavras somente quando o usuário cria um documento ou abrir um documento existente.
Private Sub ThisAddIn_Startup() Handles Me.Startup
AddHandler Application.NewDocument, AddressOf WorkWithDocument
End Sub
Private Sub WorkWithDocument(ByVal Doc As Microsoft.Office.Interop.Word.Document) _
Handles Application.DocumentOpen
Dim rng As Word.Range = Doc.Range(Start:=0, End:=0)
rng.Text = " New Text "
rng.Select()
End Sub
Membros de ThisAddIn a usar para outras tarefas
A tabela a seguir descreve e outras tarefas comuns que mostra os membros da classe de ThisAddIn você pode usar para executar tarefas.
Tarefa |
Membro a ser usado |
---|---|
Executar o código para inicializar o suplemento ao suplemento é carregado. |
Adicione código ao método de ThisAddIn_Startup .este é o manipulador de eventos padrão para o evento de Startup .Para obter mais informações, consulte Eventos em projetos do Office. |
O código de execução para limpar os recursos usados pelo suplemento antes do suplemento é descarregado. |
Adicione código ao método de ThisAddIn_Shutdown .este é o manipulador de eventos padrão para o evento de Shutdown .Para obter mais informações, consulte Eventos em projetos do Office.
Observação
Em o Outlook, o manipulador de eventos de ThisAddIn_Startup não é sempre chamado por padrão quando o suplemento é descarregado.Para obter mais informações, consulte Eventos em projetos do Office.
|
Exibir um painel de tarefa personalizada. |
use o campo de CustomTaskPanes .Para obter mais informações, consulte Painéis de tarefas personalizados. |
Expõe objetos no suplemento a outras soluções do Office. |
Substitua o método RequestComAddInAutomationService.Para obter mais informações, consulte Chamar código nos suplementos de nível de aplicativo de outras soluções do Office. |
Personalizar um recurso no Microsoft Office system implementando uma interface de extensibilidade. |
Substituir o método de RequestService para retornar uma instância de uma classe que implementa a interface.Para obter mais informações, consulte Personalizando os recursos de interface do usuário usando Interfaces de extensibilidade.
Observação
Para personalizar a fita interface do usuário, você também pode substituir o método de CreateRibbonExtensibilityObject .
|
Entendendo o design de classe de ThisAddIn
Em projetos que destinam-se .NET Framework 4, Microsoft.Office.Tools.AddIn é uma interface.A classe ThisAddIn deriva da classe Microsoft.Office.Tools.AddInBase.Essa classe base redireciona todas as chamadas a seus membros para uma implementação interna de interface de Microsoft.Office.Tools.AddIn em Visual Studio Tools for Office Runtime.
Em o suplemento projetos para Outlook, a classe de ThisAddIn deriva da classe de Microsoft.Office.Tools.Outlook.OutlookAddIn nos projetos que destinam-se o .NET Framework 3,5, e de Microsoft.Office.Tools.Outlook.OutlookAddInBase nos projetos que destinam-se .NET Framework 4.Essas classes base fornecem alguma funcionalidade adicional a regiões do formulário de suporte.Para obter mais informações sobre as regiões do formulário, consulte Criação de regiões de formulário do Outlook.
Personalizando a interface do usuário de aplicativos do Microsoft Office
Você pode programaticamente personalizar a interface do usuário de aplicativos do Microsoft Office usando um suplemento ao aplicativo.Por exemplo, você pode personalizar a fita, exibir um painel de tarefa personalizada, ou criar uma região de formato personalizado no Outlook.Para obter mais informações, consulte Personalização de interface do usuário do Office.
Visual Studio fornece os designers e as classes que você pode usar para criar os painéis de tarefa personalizada, personalizações de fita, e formulário do Outlook regiões.Esses designers e classes ajudam a simplificar o processo de personalizar esses recursos.Para obter mais informações, consulte Painéis de tarefas personalizados, Designer de faixa de opções, e Criação de regiões de formulário do Outlook.
Se você desejar personalizar um de esses recursos de uma maneira que não é suportada pelas classes e pelos designers, você também pode personalizar esses recursos implementando uma interface de extensibilidade no suplemento.Para obter mais informações, consulte Personalizando os recursos de interface do usuário usando Interfaces de extensibilidade.
Além de isso, você pode alterar interface do usuário de documentos e de pastas de trabalho do Excel do word gerar os itens host que estendem o comportamento de documentos e pastas de trabalho.Isso permite que você adicione controles gerenciados para documentos e a planilhas.Para obter mais informações, consulte Estendendo os documentos do Word e pastas de trabalho do Excel em suplementos de nível de aplicativo em tempo de execução.
Chamando o código no suplementos de Nível de outras soluções
Você pode expor objetos no suplemento a outras soluções, incluindo outras soluções do Office.Isso é útil se o suplemento fornece um serviço que você deseja ativar outras soluções para usar.Por exemplo, se você tiver um suplemento para o Microsoft Office Excel que executa cálculos financeiros de dados em um serviço da Web, outras soluções podem executar os cálculos no suplemento chamando o excel em tempo de execução.
Para obter mais informações, consulte Chamar código nos suplementos de nível de aplicativo de outras soluções do Office.
Consulte também
Tarefas
Passo a passo: Chamando o código de um suplemento em nível de aplicativo do VBA
Como: criar projetos do Office em Visual Studio
Conceitos
Chamar código nos suplementos de nível de aplicativo de outras soluções do Office
Personalizando os recursos de interface do usuário usando Interfaces de extensibilidade
Arquitetura dos suplementos de nível de aplicativo
Escrevendo código em soluções do Office