Adicionar partes XML personalizadas a documentos usando suplementos VSTO

Você pode armazenar dados XML nos seguintes tipos de documentos criando uma parte XML personalizada em um suplemento VSTO:

  • Uma pasta de trabalho do Microsoft Office Excel.

  • Um documento do Microsoft Office Word.

  • Uma apresentação do Microsoft Office PowerPoint.

    Para obter mais informações, consulte Visão geral de partes XML personalizadas.

    Aplica-se a: As informações neste tópico se aplicam a projetos de nível de aplicativo para Excel, PowerPoint e Word. Para obter mais informações, consulte Recursos disponíveis por aplicativo e tipo de projeto do Office.

Para adicionar uma parte XML personalizada a uma pasta de trabalho do Excel

  1. Adicione um novo CustomXMLPart objeto à CustomXMLParts coleção na pasta de trabalho. O CustomXMLPart contém a cadeia de caracteres XML que você deseja armazenar na pasta de trabalho.

    O exemplo de código a seguir adiciona uma parte XML personalizada a uma pasta de trabalho especificada.

    private void AddCustomXmlPartToWorkbook(Excel.Workbook workbook)
    {
        string xmlString =
            "<?xml version=\"1.0\" encoding=\"utf-8\" ?>" +
            "<employees xmlns=\"http://schemas.microsoft.com/vsto/samples\">" +
                "<employee>" +
                    "<name>Karina Leal</name>" +
                    "<hireDate>1999-04-01</hireDate>" +
                    "<title>Manager</title>" +
                "</employee>" +
            "</employees>";
    
        Office.CustomXMLPart employeeXMLPart = workbook.CustomXMLParts.Add(xmlString, missing);
    }
    
  2. Adicione o AddCustomXmlPartToWorkbook método à ThisAddIn classe em um projeto de suplemento VSTO para Excel.

  3. Chame o método de outro código em seu projeto. Por exemplo, para criar a parte XML personalizada quando o usuário abre uma pasta de trabalho, chame o método de um manipulador de eventos para o WorkbookOpen evento.

Para adicionar uma parte XML personalizada a um documento do Word

  1. Adicione um novo CustomXMLPart objeto à CustomXMLParts coleção no documento. O CustomXMLPart contém a cadeia de caracteres XML que você deseja armazenar no documento.

    O exemplo de código a seguir adiciona uma parte XML personalizada a um documento especificado.

    private void AddCustomXmlPartToActiveDocument(Word.Document document)
    {
        string xmlString =
            "<?xml version=\"1.0\" encoding=\"utf-8\" ?>" +
            "<employees xmlns=\"http://schemas.microsoft.com/vsto/samples\">" +
                "<employee>" +
                    "<name>Karina Leal</name>" +
                    "<hireDate>1999-04-01</hireDate>" +
                    "<title>Manager</title>" +
                "</employee>" +
            "</employees>";
    
        Office.CustomXMLPart employeeXMLPart = document.CustomXMLParts.Add(xmlString, missing);
    }
    
  2. Adicione o AddCustomXmlPartToDocument método à ThisAddIn classe em um projeto de suplemento VSTO para Word.

  3. Chame o método de outro código em seu projeto. Por exemplo, para criar a parte XML personalizada quando o usuário abre um documento, chame o método de um manipulador de eventos para o DocumentOpen evento.

Para adicionar uma parte XML personalizada a uma apresentação do PowerPoint

  1. Adicione um novo CustomXMLPart objeto à coleção Microsoft.Office.Interop.PowerPoint._Presentation.CustomXMLParts na apresentação. O CustomXMLPart contém a cadeia de caracteres XML que você deseja armazenar na apresentação.

    O exemplo de código a seguir adiciona uma parte XML personalizada a uma apresentação especificada.

    private void AddCustomXmlPartToPresentation(PowerPoint.Presentation presentation)
    {
        string xmlString =
            "<?xml version=\"1.0\" encoding=\"utf-8\" ?>" +
            "<employees xmlns=\"http://schemas.microsoft.com/vsto/samples\">" +
                "<employee>" +
                    "<name>Karina Leal</name>" +
                    "<hireDate>1999-04-01</hireDate>" +
                    "<title>Manager</title>" +
                "</employee>" +
            "</employees>";
    
        Office.CustomXMLPart employeeXMLPart = 
            presentation.CustomXMLParts.Add(xmlString, missing);
    }
    
  2. Adicione o AddCustomXmlPartToPresentation método à ThisAddIn classe em um projeto de suplemento VSTO para PowerPoint.

  3. Chame o método de outro código em seu projeto. Por exemplo, para criar a parte XML personalizada quando o usuário abre uma apresentação, chame o método de um manipulador de eventos para o evento Microsoft.Office.Interop.PowerPoint.EApplication_Event.AfterPresentationOpen .

Programação robusta

Para simplificar, este exemplo usa uma cadeia de caracteres XML que é definida como uma variável local no método. Normalmente, você deve obter o XML de uma fonte externa, como um arquivo ou um banco de dados.