Desenvolvimento - C#

Funcionalidades do Office usando Visual Studio for Office - Parte 2

Nesse novo artigo vamos usar o ActionsPane, que é uma espécie de WinForms totalmente acoplado à qualquer aplicativo Office.

por Ediberto Alves



Olá, no meu post anterior eu fiz um exemplo básico criando um add-in para ser usado no Excel, mas também podendo ser usado em qualquer outro aplicativo do suíte Office.

Nesse novo artigo vamos usar o ActionsPane, que é uma espécie de WinForms totalmente acoplado à qualquer aplicativo Office. Para isso vamos criar um novo projeto no Visual Studio 2008 SP1.

Criando o projeto:

Vá em File > New Project... e selecione Word 2007 Document, e ao final dê o nome do projeto:



Na tela a seguir, poderá selecionar qual documento deseja anexar ao projeto, se é um novo documento ou macro, há também de associar um documento que já existe:



Dentro do Visual Studio, uma tela Word é carregada, juntamente a namespace ThisDocument é associada ao Word:



Adicionando ActionsPane ao projeto:

No Solution Explorer, clique com o botão direito do mouse e a seguir Add> New Item... e vamos adicionar o ActionsPane, como a figura a seguir; coloque um nome e seguida OK:



Ao final, será criado um ActionsPane no Solution Explorer, e no modo design vemos um form sem a barra superior e seus botões Minimizar, Maximizar e Fechar. Pois o controle desse ActionsPane será todo no Word:



Adicionando componentes:

Vamos adicionar um TextBox e um Button e vamos nomeá-los cada um:

TextBox => propriedade Name : txtTexto
Button => propriedade Name: btnOk,propriedade Text: OK



Clicando duas vezes no "btnOK", vamos inserir um código para exibir o texto no documento:
private void btnOK_Click(object sender, EventArgs e)
{
    Globals.ThisDocument.Paragraphs[1].Range.Text = "Olá " + txtTexto.Text + ". VSTO está aqui!";
    
}

Exibindo o ActionsPane no Word:

Agora vamos fazer com que o ActionsPane seja exibido ao iniciar o Word. Na classe ThisDocument.cs vamos criar uma instância que apontará ao apcOlaMundo:

private apcOlaMundo OlaMundo = new apcOlaMundo();

No evento Startup do ThisDocument insere o seguinte código:

this.ActionsPane.Controls.Add(OlaMundo);

Executando o projeto:

Dê F5 ao projeto e note que a ActionsPane está ativa ao Word:



Digite um texto qualquer e clique em OK:



Bom pessoal, espero que esse pequeno tutorial ajude no momento de suas soluções. Podemos fazer várias integrações ainda usando as tecnologias já existentes no Visual Studio. Fiquem a vontade para desenvolverem usando VSTO.

Download: ActionPaneWord.zip

Referências:

Visual Studio for Office
Actions Pane Overview
Ediberto Alves

Ediberto Alves - Desenvolvedor, graduado em Tecnologia em Informática em atuação na área de desenvolvimento de soluções nas plataformas Win32 e Web, usando tecnologias .NET, Delphi e banco de dados Oracle, Firebird, SQL Server há mais de 7 anos. Publica artigos sobre desenvolvimento, tecnologia e outros assuntos no blog: http://edibertoalves.com.br/blog e também, presente nos fóruns da comunidade .NET.