Demonstra Passo a passo: A criação de uma marca inteligente usando-se um suplemento em nível de aplicativo

Esta explicação passo a passo demonstra como criar uma marca inteligente de nível de aplicativo que você pode usar em cada documento aberto. A marca inteligente reconhece medidas de colher de Sopa em um documento do Word de Microsoft Office e fornece uma ação que converte o valor em onças. Ele adiciona o valor de onça equivalente entre parênteses após o período de colher de Sopa.

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

Para executar a marca inteligente, os usuários finais deve habilitar as marcas inteligentes no Word. For more information, see Como: Ativar marcas inteligentes no Word e Excel.

This walkthrough illustrates the following tasks:

  • Criação de uma marca inteligente que usa uma expressão regular para reconhecer seqüências de caracteres.

  • Criando uma ação que recupera dados a partir da marca inteligente e modifica o texto reconhecido de marca inteligente.

ObservaçãoObservação

Your computer might show different names or locations for some of the Visual Studio user interface elements in the following instructions. The Visual Studio edition that you have and the settings that you use determine these elements. For more information, see Trabalhando com configurações.

Pré-requisitos

You need the following components to complete this walkthrough:

-

Uma edição do Visual Studio 2010 que inclua as ferramentas de desenvolvedor do Microsoft Office. Para obter mais informações, consulte [Configurando um computador para desenvolver soluções do Office](bb398242\(v=vs.100\).md).
  • Word 2007.

  • .NET Framework 3.5.

ObservaçãoObservação

Se tiver por alvo.NET Framework 4, você deve escrever um código diferente para criar marcas inteligentes e ações. For more information, see Arquitetura de marcas inteligentes.

Creating a New Project

A primeira etapa é criar um projeto de suplemento do Word.

Para criar um novo projeto.

Visual Studio adiciona o projeto de minha receita de marca inteligente para Solution Explorer.

Configurando o projeto.

O projeto precisa de uma referência para a DLL de marca inteligente e também precisa usar expressões regulares.

Para configurar seu projeto.

  1. On the Project menu, click Add Reference.

  2. Sobre o .NET guia, selecione Microsoft.Office.Interop.SmartTag e clique em OK. Selecione o 12.0.0.0 de versão do assembly.

  3. Em Solution Explorer, clique com o botão direito ThisDocument. vb (em Visual Basic) ou ThisDocument.cs (em C#) e, em seguida, clique em Exibir código.

  4. Adicione a seguinte linha de código na parte superior do arquivo.

    Imports System.Text.RegularExpressions
    
    using System.Text.RegularExpressions;
    

Criando a marca inteligente

Para habilitar a marca inteligente localizar e converter as medidas de colher de Sopa, adicione uma expressão regular para a lista de termos que reconhece a marca inteligente e criar uma ação que estarão disponível quando o usuário clica na marca inteligente.

Para criar a marca inteligente

  1. Substituir o ThisAddIn_Startup manipulador de eventos do ThisAddIn classe com o código a seguir. Esse código cria um SmartTag que representa a marca inteligente e adiciona uma expressão regular para a lista de termos que reconhece a marca inteligente.

    WithEvents RecipeAction As Microsoft.Office.Tools.Word.Action
    
    Private Sub ThisAddIn_Startup(ByVal sender As Object, _
        ByVal e As System.EventArgs) Handles Me.Startup
    
        Dim SmartTagDemo As New Microsoft.Office.Tools.Word.SmartTag( _
            "www.microsoft.com/Demo#DemoSmartTag", "Recipe Smart Tag")
    
        SmartTagDemo.Expressions.Add(New Regex( _
            "(?'tbsNumber'[+-]?\b[0-9]+)?\s?(tbs|tablespoons|tablespoon)\b"))
    
    private Microsoft.Office.Tools.Word.Action RecipeAction;
    
    private void ThisAddIn_Startup(object sender, System.EventArgs e)
    {
        Microsoft.Office.Tools.Word.SmartTag SmartTagDemo =
            new Microsoft.Office.Tools.Word.SmartTag(
            @"www.microsoft.com/Demo#DemoSmartTag",
            @"Recipe Smart Tag");
    
        // Specify the terms to recognize.
        SmartTagDemo.Expressions.Add(new Regex(
            @"(?'tbsNumber'[+-]?\b[0-9]+)?\s?(tbs|tablespoons|tablespoon)\b"));
    
  2. Criar uma nova Action e adicioná-lo para o Actions propriedade de marca inteligente. O Action representa um item que o usuário pode clicar no menu de marca inteligente.

    RecipeAction = New Microsoft.Office.Tools.Word.Action("Convert to ounces")
    SmartTagDemo.Actions = New Microsoft.Office.Tools.Word.Action() {RecipeAction}
    
    RecipeAction = new Microsoft.Office.Tools.Word.Action(
        @"Convert to ounces");
    
    // Add the action to the smart tag.
    SmartTagDemo.Actions = new Microsoft.Office.Tools.Word.Action[] { RecipeAction };
    
  3. Anexar a marca inteligente para o VstoSmartTags propriedade da ThisAddIn classe. No C#, anexar um manipulador de eventos para o Click eventos de ação.

        Me.VstoSmartTags.Add(SmartTagDemo)
    End Sub
    
        // Add the smart tag to the document.
        this.VstoSmartTags.Add(SmartTagDemo);
    
        RecipeAction.Click += new Microsoft.Office.Tools.Word.ActionClickEventHandler(
            RecipeAction_Click);
    }
    

Criando um manipulador de eventos para a ação.

O manipulador de eventos recupera o valor de colher de Sopa da chave tbsNumber, que está no conjunto de propriedades da marca inteligente. O manipulador de eventos, em seguida, converte a quantidade de colher de Sopa em onças e insere o valor de onça entre parênteses após o valor de colher de Sopa.

Neste exemplo, a chave tbsNumber identifica um grupo capturado da expressão regular atribuído à marca inteligente. Para obter mais informações sobre pacotes de propriedade e expressões regulares em marcas inteligentes, consulte Arquitetura de marcas inteligentes.

To create the event handler

  • Copie o seguinte código para o ThisAddIn classe.

    Private Sub RecipeAction_Click(ByVal sender As Object, _
        ByVal e As Microsoft.Office.Tools.Word.ActionEventArgs) _
        Handles RecipeAction.Click
    
        Dim value As String = e.Properties.Read("tbsNumber")
        Dim tbsRecipeAmount As Double = System.Convert.ToDouble(value)
        Dim ozRecipeAmount As Double = tbsRecipeAmount * 0.5
        e.Range.InsertAfter(" (" + ozRecipeAmount.ToString() + " oz)")
    End Sub
    
    private void RecipeAction_Click(object sender,
        Microsoft.Office.Tools.Word.ActionEventArgs e)
    {
        string value = e.Properties.get_Read(@"tbsNumber");
        double tbsRecipeAmount = System.Convert.ToDouble(value);
        double ozRecipeAmount = tbsRecipeAmount * 0.5;
        e.Range.InsertAfter(" (" + ozRecipeAmount.ToString() + " oz)");
    }
    

Testing the Application

Agora você pode testar seu documento para verificar que a marca inteligente converte as medidas de colher de Sopa em onças.

Para testar a sua pasta de trabalho.

  1. No Word, ative as marcas inteligentes.

    For more information, see Como: Ativar marcas inteligentes no Word e Excel.

  2. Pressione F5 para executar seu projeto.

  3. No documento do Word, digite 1 colher de Sopa salt.

  4. Clique no ícone de marca inteligente aparece sobre 1 colher de Sopa e, em seguida, clique em Converter em onças.

  5. Confirme que o equivalente de onça é inserido após o período de colher de Sopa.

Consulte também

Tarefas

Como: Ativar marcas inteligentes no Word e Excel

Como: Adicionar marcas inteligentes em documentos do Word

Como: Adicionar marcas inteligentes para pastas de trabalho do Excel

Como: Criar marcas inteligentes com reconhecedores de personalizado no Word e.NET Framework 3.5

Como: Criar marcas inteligentes com reconhecedores de personalizadas no Excel e.NET Framework 3.5

Demonstra Passo a passo: A criação de uma marca inteligente usando uma personalização em nível de documento

Conceitos

Arquitetura de marcas inteligentes

Outros recursos

Visão geral sobre marcas inteligentes