XMLMapping.SetMappingByNode(CustomXMLNode) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Permite criar ou alterar o mapeamento de dados XML em um controle de conteúdo. Retorna True se o Microsoft Office Word mapear o controle de conteúdo para um nó XML personalizado no armazenamento de dados XML personalizado do documento.
public:
bool SetMappingByNode(Microsoft::Office::Core::CustomXMLNode ^ Node);
public bool SetMappingByNode (Microsoft.Office.Core.CustomXMLNode Node);
abstract member SetMappingByNode : Microsoft.Office.Core.CustomXMLNode -> bool
Public Function SetMappingByNode (Node As CustomXMLNode) As Boolean
Parâmetros
- Node
- CustomXMLNode
Especifica o nó XML ao qual o controle de conteúdo atual será mapeado.
Retornos
Booliano
Exemplos
O exemplo a seguir define a propriedade interna do documento para o autor do documento, insere um novo controle de conteúdo no documento ativo e, em seguida, define o mapeamento XML do controle para a propriedade interna do documento.
<span class="label">Dim objcc As ContentControl
Dim objNode As CustomXMLNode
Dim objMap As XMLMapping
Dim blnMap As Boolean
ActiveDocument.BuiltInDocumentProperties("Author").Value = "David Jaffe"
Set objcc = ActiveDocument.ContentControls.Add _
(wdContentControlDate, ActiveDocument.Paragraphs(1).Range)
Set objNode = ActiveDocument.CustomXMLParts.SelectByNamespace _
("http://schemas.openxmlformats.org/package/2006/metadata/core-properties") _
(1).DocumentElement.ChildNodes(1)
Set objMap = objcc.XMLMapping
blnMap = objMap.SetMappingByNode(objNode)</span>
O exemplo a seguir cria uma parte XML personalizada e, em seguida, cria dois controles de conteúdo e mapeia cada controle de conteúdo para um nó específico no XML personalizado.
<span class="label">Dim objRange As Range
Dim objCustomPart As CustomXMLPart
Dim objCustomControl As ContentControl
Dim objCustomNode As CustomXMLNode
Set objCustomPart = ActiveDocument.CustomXMLParts.Add
objCustomPart.LoadXML ("<books><book><author>Matt Hink</author>" & _
"<title>Migration Paths of the Red Breasted Robin</title><genre>non-fiction</genre>" & _
"<price>29.95</price><pub_date>2007-02-01</pub_date><abstract>" & _
"You see them in the spring outside your windows. You hear their lovely " & _
"songs wafting in the warm spring air. Now follow the path of the red breasted robin " & _
"as it migrates to warmer climes in the fall, and then back to your back yard " & _
"in the spring.</abstract></book></books>")
ActiveDocument.Range.InsertParagraphBefore
Set objRange = ActiveDocument.Paragraphs(1).Range
Set objCustomNode = objCustomPart.SelectSingleNode _
("/books/book/title")
Set objCustomControl = ActiveDocument.ContentControls _
.Add(wdContentControlText, objRange)
objCustomControl.XMLMapping.</span>
<span class="label">SetMappingByNode</span>
<span class="label">objCustomNodeobjRange.InsertParagraphAfterSet objRange = ActiveDocument.Paragraphs(2).RangeSet objCustomNode = objCustomPart.SelectSingleNode _ ("/books/book/abstract")Set objCustomControl = ActiveDocument.ContentControls _ .Add(wdContentControlText, objRange)objCustomControl.XMLMapping.</span>
<span class="label">SetMappingByNode</span>
<span class="label">objCustomNode</span>
Comentários
Se o mapeamento XML já existir, o Word substituirá o mapeamento XML existente e o conteúdo do novo nó XML mapeado substituirá o texto do controle de conteúdo. Consulte também o SetMapping(String, String, CustomXMLPart) método.
Observação: a criação de um mapeamento para um controle de conteúdo de texto avançado causa um erro em tempo de execução.