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
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); }
Adicione o
AddCustomXmlPartToWorkbook
método àThisAddIn
classe em um projeto de suplemento VSTO para Excel.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
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); }
Adicione o
AddCustomXmlPartToDocument
método àThisAddIn
classe em um projeto de suplemento VSTO para Word.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
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); }
Adicione o
AddCustomXmlPartToPresentation
método àThisAddIn
classe em um projeto de suplemento VSTO para PowerPoint.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.