XMLMapping Schnittstelle
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt die XML-Zuordnung für ein ContentControl -Objekt zwischen benutzerdefiniertem XML und einem Inhaltssteuerelement dar. Eine XML-Zuordnung ist eine Verknüpfung zwischen dem Text in einem Inhaltssteuerelement und einem XML-Element im benutzerdefinierten XML-Datenspeicher für dieses Dokument.
public interface class XMLMapping
[System.Runtime.InteropServices.Guid("0C1FABE7-F737-406F-9CA3-B07661F9D1A2")]
public interface XMLMapping
type XMLMapping = interface
Public Interface XMLMapping
- Attribute
Hinweise
Verwenden Sie die SetMapping(String, String, CustomXMLPart) -Methode, um die XML-Zuordnung für ein Inhaltssteuerelement mithilfe einer XPath-Zeichenfolge hinzuzufügen oder zu ändern. Im folgenden Beispiel wird die integrierte Dokumenteigenschaft für den Autor des Dokuments festgelegt, ein neues Inhaltssteuerelement in das aktive Dokument eingefügt und dann die XML-Zuordnung für das Steuerelement auf die integrierte Dokumenteigenschaft festgelegt.
<span class="label">Dim objcc As ContentControl
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 objMap = objcc.XMLMapping
blnMap = objMap.SetMapping(XPath:="/ns1:coreProperties[1]/ns0:createdate[1]")
If blnMap = False Then
MsgBox "Unable to map the content control."
End If</span>
Verwenden Sie die SetMappingByNode(CustomXMLNode) -Methode, um die XML-Zuordnung für ein Inhaltssteuerelement mithilfe eines CustomXMLNode-Objekts hinzuzufügen oder zu ändern. Im folgenden Beispiel wird die gleiche Vorgehensweise wie im vorherigen Beispiel ausgeführt, es wird jedoch die SetMappingByNode-Methode verwendet.
<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>
Im folgenden Beispiel wird ein neues CustomXMLPart-Objekt erstellt und benutzerdefinierter XML-Code in das Objekt geladen. Danach werden zwei neue Inhaltssteuerelemente erstellt und jeweils einem anderen XML-Element in benutzerdefiniertem XML-Code zugeordnet.
<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>2/1/2007</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.SetMappingByNode objCustomNode
objRange.InsertParagraphAfter
Set objRange = ActiveDocument.Paragraphs(2).Range
Set objCustomNode = objCustomPart.SelectSingleNode _
("/books/book/abstract")
Set objCustomControl = ActiveDocument.ContentControls _
.Add(wdContentControlText, objRange)
objCustomControl.XMLMapping.SetMappingByNode objCustomNode
MsgBox objCustomControl.XMLMapping.IsMapped</span>
Verwenden Sie die Delete() -Methode, um die XML-Zuordnung für ein Inhaltssteuerelement zu entfernen. Durch das Löschen der XML-Zuordnung für ein Inhaltssteuerelement wird nur die Verbindung zwischen dem Inhaltssteuerelement und den XML-Daten gelöscht. Sowohl das Inhaltssteuerelement als auch die XML-Daten verbleiben im Dokument. Im folgenden Beispiel wird die XML-Zuordnung für alle Inhaltssteuerelemente im aktiven Dokument gelöscht, die derzeit zugeordnet sind.
<span class="label">Dim objCC As ContentControl
For Each objCC In ActiveDocument.ContentControls
If objCC.XMLMapping.IsMapped Then
objCC.XMLMapping.Delete
End If
Next</span>
Verwenden Sie die IsMapped -Eigenschaft, um zu bestimmen, ob ein Inhaltssteuerelement einem XML-Knoten im Datenspeicher des Dokuments zugeordnet ist. Im folgenden Beispiel wird die XML-Zuordnung für alle zugeordneten Inhaltssteuerelemente im aktiven Dokument gelöscht.
<span class="label">Dim objCC As ContentControl
For Each objCC In ActiveDocument.ContentControls
If objCC.XMLMapping.IsMapped Then
objCC.XMLMapping.Delete
End If
Next</span>
Verwenden Sie die CustomXMLNode -Eigenschaft, um auf den XML-Knoten zuzugreifen, dem ein Inhaltssteuerelement zugeordnet ist. Verwenden Sie die CustomXMLPart -Eigenschaft, um auf den XML-Teil zuzugreifen, dem ein Inhaltssteuerelement zugeordnet ist. Informationen zum Arbeiten mit dem CustomXMLNode-Objekt und dem CustomXMLPart-Objekt finden Sie unter den jeweiligen Objektthemen.
Eigenschaften
Application |
Gibt ein _Application Objekt zurück, das die Microsoft Word-Anwendung darstellt. |
Creator |
Gibt eine 32-Bit-Ganzzahl zurück, die auf die Anwendung verweist, in der das Add-In erstellt wurde. Schreibgeschützter langer Wert. |
CustomXMLNode |
Gibt ein CustomXMLNode-Objekt zurück, das den benutzerdefinierten XML-Knoten im Datenspeicher darstellt, dem das Inhaltssteuerelement im Dokument zugeordnet ist. |
CustomXMLPart |
Gibt ein CustomXMLPart-Objekt zurück, das die benutzerdefinierte XML-Komponente darstellt, dem das Inhaltssteuerelement im Dokument zugeordnet wird. |
IsMapped |
Gibt einen Wert vom Typ Boolean zurück, der angibt, ob das Inhaltssteuerelement im Dokument einem XML-Knoten im XML-Datenspeicher des Dokuments zugeordnet ist. Schreibgeschützt. |
Parent |
Gibt einen Wert vom Typ Object zurück, der das übergeordnete Objekt des angegebenen XMLMapping-Objekts darstellt. |
PrefixMappings |
Gibt eine Zeichenfolge zurück, die die Präfixzuordnungen darstellt, die zum Auswerten des XPath für die aktuelle XML-Zuordnung verwendet werden. Schreibgeschützt. |
XPath |
Gibt eine Zeichenfolge zurück, die den XPath für die XML-Zuordnung darstellt, die dem aktuell zugeordneten XML-Knoten ausgewertet wird. Schreibgeschützt. |
Methoden
Delete() |
Löscht die XML-Zuordnung aus dem übergeordneten Inhaltssteuerelement. |
SetMapping(String, String, CustomXMLPart) |
Ermöglicht das Erstellen oder Ändern der XML-Zuordnung für ein Inhaltssteuerelement. Gibt True zurück, wenn Microsoft Office Word das Inhaltssteuerelement einem benutzerdefinierten XML-Knoten im benutzerdefinierten XML-Datenspeicher des Dokuments zuordnet. |
SetMappingByNode(CustomXMLNode) |
Ermöglicht das Erstellen oder Ändern der XML-Datenzuordnung für ein Inhaltssteuerelement. Gibt True zurück, wenn Microsoft Office Word das Inhaltssteuerelement einem benutzerdefinierten XML-Knoten im benutzerdefinierten XML-Datenspeicher des Dokuments zuordnet. |