-1
我正在做丝带,当我创建节点根和命名空间,我把它像属性附加伤害。下一个节点是repites在毯子命名空间
Code:
Private Sub crearRibbon()
Dim RibbonXml As DOMDocument60
Dim objRaizElem As IXMLDOMElement
Dim objRibbonElem As IXMLDOMElement
Dim objPestana As IXMLDOMElement
Dim objPestanas As IXMLDOMElement
Dim objGrupo As IXMLDOMElement
Dim objControl As IXMLDOMElement
Dim objRaizAtt As IXMLDOMAttribute
Dim objRibbonAtt As IXMLDOMAttribute
Dim objPestanaAtt As IXMLDOMAttribute
Dim objGrupoAtt As IXMLDOMAttribute
Dim objControlAtt As IXMLDOMAttribute
Dim strRibbon As String
Dim x As String
Dim oNode As MSXML2.IXMLDOMElement
Set RibbonXml = New DOMDocument60
'Raiz
Set objRaizElem = RibbonXml.createElement("customUI")
RibbonXml.appendChild objRaizElem
Set objRaizAtt = RibbonXml.createAttribute("xmlns")
objRaizAtt.Text = ("http://schemas.microsoft.com/office/2006/01/customui")
objRaizElem.setAttributeNode objRaizAtt
'Ribbon
Set objRibbonElem = RibbonXml.createElement("ribbon")
objRaizElem.appendChild objRibbonElem
Set objRibbonAtt = RibbonXml.createAttribute("startFromScratch")
objRibbonAtt.Text = ("True")
objRibbonElem.setAttributeNode objRibbonAtt
Set oNode = RibbonXml.selectSingleNode("//ribbon")
'Set oNode = RibbonXml.getElementsByTagName("/customUI/ribbon/[xmlns]")
'oNode.removeAttribute ("xmlns")
oNode.Attributes.removeNamedItem "xmlns"
'Pestaña
Set objPestana = RibbonXml.createElement("tabs")
objRibbonElem.appendChild objPestana
'Pestañas
Set objPestanas = RibbonXml.createElement("tab")
objPestana.appendChild objPestanas
Set objPestanaAtt = RibbonXml.createAttribute("id")
objPestanaAtt.Text = ("1")
objPestanas.setAttributeNode objPestanaAtt
Set objPestanaAtt = RibbonXml.createAttribute("label")
objPestanaAtt.Text = ("A Custom Tab")
objPestanas.setAttributeNode objPestanaAtt
Set objPestanaAtt = RibbonXml.createAttribute("visible")
objPestanaAtt.Text = ("true")
objPestanas.setAttributeNode objPestanaAtt
'Grupos
Set objGrupo = RibbonXml.createElement("group")
objPestanas.appendChild objGrupo
Set objGrupoAtt = RibbonXml.createAttribute("id")
objGrupoAtt.Text = ("dbCustomGroup")
objGrupo.setAttributeNode objGrupoAtt
Set objGrupoAtt = RibbonXml.createAttribute("label")
objGrupoAtt.Text = ("A Custom Group")
objGrupo.setAttributeNode objGrupoAtt
'Control
Set objControl = RibbonXml.createElement("control")
objGrupo.appendChild objControl
Set objControlAtt = RibbonXml.createAttribute("idMso")
objControlAtt.Text = ("Paste")
objControl.setAttributeNode objControlAtt
Set objControlAtt = RibbonXml.createAttribute("label")
objControlAtt.Text = ("Built-in Paste")
objControl.setAttributeNode objControlAtt
Set objControlAtt = RibbonXml.createAttribute("enabled")
objControlAtt.Text = ("true")
objControl.setAttributeNode objControlAtt
RibbonXml.Save ("miRibbon1.xml")
末次
而且我的输出
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
<ribbon xmlns="" startFromScratch="False">
<tabs>
<tab id="1" label="A Custom Tab" visible="true">
<group id="dbCustomGroup" label="A Custom Group">
<control idMso="Paste" label="Built-in Paste" enabled="true"/>
</group>
</tab>
</tabs>
</ribbon>
</customUI>
And ribbon xmlns=""
它只能得到带状
感谢
你在问什么? – dbmitch
你在问什么并且应该是: –
emiliove
英文花费我很多,但是在根节点命名空间之后把下面的节点带到节点中我的例子中,我向他展示了命名空间 我尝试添加项目以删除Ribbon节点中的IXMLDOMElement: 9月oNode = RibbonXml.selectSingleNode(“// ribbon”) oNode.Attributes.removeNamedItem“xmlns” 但是不删除它,我试过其他方法,但都没有成功。 谢谢 –
emiliove