Como: adicionar controles do Windows Forms a documentos do Office

Você pode adicionar controles de formulários do Windows para documentos Microsoft Office Excel e Microsoft Office Word em tempo de design em projetos de um documento nível.Em tempo de execução, você pode adicionar controles em personalizações de um documento no nível e suplementos do aplicativo.Por exemplo, você pode adicionar um controle de ComboBox a sua planilha de modo que os usuários podem selecionar de uma lista de opções.

Aplicável a: As informações neste tópico se aplicam a projetos de nível de documento e projetos de nível de aplicativo para os seguintes aplicativos: Excel 2013 e Excel 2010; Word 2013 e Word 2010. Para obter mais informações, consulte Recursos disponíveis pelo aplicativo do Office e o tipo de projeto.

Este tópico descreve as seguintes tarefas:

  • Adicionando controles em tempo de design

  • Adicionando controles em tempo de execução em projetos de um documento nível

  • Adicionando controles em tempo de execução em suplementos nível de aplicativo

link para vídeo Para uma demonstração de vídeo, consulte Como: eu faço Adicionar controles a uma superfície do documento em tempo de execução?relacionada.

Adicionando controles em tempo de design

Há várias maneiras de adicionar em tempo de design controles de formulários do Windows para o documento em um projeto de um documento nível.

ObservaçãoObservação

Seu computador pode mostrar nomes ou locais diferentes para alguns dos elementos da interface do usuário do Visual Studio nas instruções a seguir. A edição do Visual Studio que você possui e as configurações que você usa determinam esses elementos. Para obter mais informações, consulte Configurações de Visual Studio.

Para arraste um controle formulários do Windows para o documento

  1. Criar ou abrir um projeto de pasta de trabalho do Excel ou exprima o projeto do documento no Visual Studio para que o documento está visível no designer.Para obter informações sobre como criar projetos, consulte Como: criar projetos do Office em Visual Studio.

  2. Na guia de Controles Comuns de Caixa de Ferramentas, clique no controle que você deseja adicionar, e arraste-o para o documento.

    ObservaçãoObservação

    Quando você seleciona um controle Excel, você verá =EMBED (“WinForms.Control.Host”, "") "")em Barra de Fórmulas.Esse texto é necessário e não deve ser excluído.

Para desenhar um controle de formulários do Windows no documento

  1. Criar ou abrir um projeto de pasta de trabalho do Excel ou exprima o projeto do documento no Visual Studio para que o documento está visível no designer.Para obter informações sobre como criar projetos, consulte Como: criar projetos do Office em Visual Studio.

  2. Na guia de Controles Comuns de Caixa de Ferramentas, clique no controle que você deseja adicionar.

  3. No documento, clique onde você deseja que o canto superior esquerdo do controle a ser localizado, e arrastar a onde você deseja que o canto inferior direito do controle a ser encontrado.

    O controle é adicionado ao documento com o local e tamanho especificados.

    ObservaçãoObservação

    Quando você seleciona um controle Excel, você verá =EMBED (“WinForms.Control.Host”, "") "")em Barra de Fórmulas.Esse texto é necessário e não deve ser excluído.

Para adicionar um controle de formulários do Windows para o documento único clicando no controle

  1. Criar ou abrir um projeto de pasta de trabalho do Excel ou exprima o projeto do documento no Visual Studio para que o documento está visível no designer.Para obter informações sobre como criar projetos, consulte Como: criar projetos do Office em Visual Studio.

  2. Na guia de Controles Comuns de Caixa de Ferramentas, clique no controle que você deseja adicionar

  3. O documento, clique onde você deseja que o controle a ser adicionado.

    O controle é adicionado ao documento com o tamanho padrão.

    ObservaçãoObservação

    Quando você seleciona um controle Excel, você verá =EMBED (“WinForms.Control.Host”, "") "")em Barra de Fórmulas.Esse texto é necessário e não deve ser excluído.

Para adicionar um controle de formulários do Windows para o documento clicando duas vezes no controle

  1. Criar ou abrir um projeto de pasta de trabalho do Excel ou exprima o projeto do documento no Visual Studio para que o documento está visível no designer.Para obter informações sobre como criar projetos, consulte Como: criar projetos do Office em Visual Studio.

  2. Na guia de Controles Comuns de Caixa de Ferramentas, clique duas vezes no controle que você deseja adicionar.

    O controle é adicionado ao documento no centro de documento ou painel ativo.

    ObservaçãoObservação

    Quando você seleciona um controle Excel, você verá =EMBED (“WinForms.Control.Host”, "") "")em Barra de Fórmulas.Esse texto é necessário e não deve ser excluído.

Para adicionar um controle de formulários do Windows para o documento pressionando a tecla ENTER

  1. Criar ou abrir um projeto de pasta de trabalho do Excel ou exprima o projeto do documento no Visual Studio para que o documento está visível no designer.Para obter informações sobre como criar projetos, consulte Como: criar projetos do Office em Visual Studio.

  2. Na guia de Controles Comuns de Caixa de Ferramentas, clique no controle que você deseja adicionar, e pressione a tecla ENTER.

    O controle é adicionado ao documento no centro de documento ou painel ativo.

    ObservaçãoObservação

    Quando você seleciona um controle Excel, você verá =EMBED (“WinForms.Control.Host”, "") "")em Barra de Fórmulas.Esse texto é necessário e não deve ser excluído.

Adicionando controles em tempo de execução em projetos de um documento nível

Você pode programaticamente adicionar controles de formulários do Windows a um documento em tempo de execução.Em Palavras, use métodos de propriedade de Controls da classe de ThisDocument .O excel, use métodos de propriedade de Controls de uma classe de Sheetem .Cada método tem várias sobrecargas que permitem que você especifique o local do controle de maneiras diferentes.

Quando você adiciona um controle de formulários do Windows a um documento em tempo de execução, o controle não é persistida no documento quando o documento é fechado.Você pode recriar o controle na próxima vez que o documento é aberta.Para obter mais informações, consulte Adicionar controles a documentos do Office em tempo de execução.

Para adicionar um controle em tempo de execução de formulários do Windows

  • Use um método que tem o nome Add<classe de controle> (onde classe de controle é o nome da classe de controle formulários do Windows que você deseja adicionar, como AddButton()).

    O exemplo de código a seguir demonstra como adicionar Button a célula C5 de Sheet1 em um projeto de um documento nível para o excel.

    Private Sub Sheet1_Startup(ByVal sender As Object, ByVal e As System.EventArgs) _
        Handles Me.Startup
    
        Dim salesButton As Microsoft.Office.Tools.Excel.Controls.Button
        salesButton = Me.Controls.AddButton(Me.Range("C5"), "salesButton")
        salesButton.Text = "Calculate Total Sales"
    End Sub
    
    private void Sheet1_Startup(object sender, System.EventArgs e)
    {
        Microsoft.Office.Tools.Excel.Controls.Button salesButton;
        salesButton = this.Controls.AddButton(this.get_Range("C5"), "salesButton");
        salesButton.Text = "Calculate Total Sales";
    }
    

Adicionando controles em tempo de execução em suplementos nível de aplicativo

Você pode adicionar controles de formulários do Windows por meio para qualquer documento aberto em tempo de execução.Primeiro, gerar um item host baseado em um documento aberto ou em uma planilha.Em seguida, no Word, métodos de uso da propriedade de Document.Controls do novo item host.O excel, use métodos de propriedade de Worksheet.Controls do novo item host.Cada método tem várias sobrecargas que permitem que você especifique o local do controle de maneiras diferentes.

Quando você adiciona um controle de formulários do Windows a um documento em tempo de execução, o controle não é persistida no documento quando o documento é fechado.Você pode recriar o controle na próxima vez que o documento é aberta.Para obter mais informações, consulte Adicionar controles a documentos do Office em tempo de execução.

Para obter mais informações sobre como gerar itens host em projetos de aplicativo, consulte Estendendo os documentos do Word e pastas de trabalho do Excel em suplementos de nível de aplicativo em tempo de execução.

Para adicionar um controle em tempo de execução de formulários do Windows

  • Use um método que tem o nome Add<classe de controle> (onde classe de controle é o nome da classe de controle formulários do Windows que você deseja adicionar, como AddButton()).

    ObservaçãoObservação

    No nível do suplemento projetos que destinam-se .NET Framework 4 ou .NET Framework 4.5, você deve adicionar uma referência ao conjunto de Microsoft.Office.Tools.Excel.v4.0.Utilities.dll ou de Microsoft.Office.Tools.Word.v4.0.Utilities.dll antes que você possa acessar os métodos de Add<classe de controle>.

    O exemplo de código a seguir demonstra como adicionar Button para o primeiro parágrafo de documento ativo usando um suplemento ao Word.

    Dim salesButton As Microsoft.Office.Tools.Word.Controls.Button
    
    Dim extendedDocument As Document = Globals.Factory.GetVstoObject(Me.Application.ActiveDocument)
    
    extendedDocument.Paragraphs(1).Range.InsertParagraphBefore()
    salesButton = extendedDocument.Controls.AddButton( _
        extendedDocument.Paragraphs(1).Range, 75, 18, "salesButton")
    salesButton.Text = "Calculate Sales"
    
    Microsoft.Office.Tools.Word.Controls.Button salesButton;
    
    Document extendedDocument = Globals.Factory.GetVstoObject(this.Application.ActiveDocument);
    
    
    extendedDocument.Paragraphs[1].Range.InsertParagraphBefore();
    salesButton = extendedDocument.Controls.AddButton(
        extendedDocument.Paragraphs[1].Range, 75, 18, "salesButton");
    salesButton.Text = "Calculate Sales";
    

Consulte também

Tarefas

Como: redimensionar os controles dentro das células da planilha

Conceitos

Controles do Windows Forms em Visão geral de documentos do Office

Adicionar controles a documentos do Office em tempo de execução

Itens de host e visão geral sobre controles de Host

Parâmetros opcionais em soluções do Office