Я пытаюсь сформировать ленту XML с данными из базы данных, и вот что я написал: -
XNamespace xNameSpace = "http://schemas.microsoft.com/office/2006/01/customui";
XDocument document = new XDocument();
document.Add( new XElement (xNameSpace+"customUI"
, new XElement("ribbon"
, new XElement("tabs"))));
// more code to add the groups and the controls with-in the groups
.......
// code below to add ribbon XML to the document and to add the relationship
RibbonExtensibilityPart ribbonExtensibilityPart = myDoc.AddNewPart<RibbonExtensibilityPart>();
ribbonExtensibilityPart.CustomUI = new DocumentFormat.OpenXml.Office.CustomUI.CustomUI(ribbonXml.ToString());
myDoc.CreateRelationshipToPart(ribbonExtensibilityPart);
Я не вижу ошибок при выполнении вышеприведенного. Однако, когда я открываю измененный документ, я не вижу добавленной ленты. Я вижу следующее в CustomUI / CustomUI.xml внутри слова: -
<?xml version="1.0" encoding="utf-8"?><customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
<ribbon xmlns="">
<tabs>
.....
Я не уверен, как атрибут "xmlns" добавляется в элемент ленты. Когда я удаляю этот атрибут, лента показывается.
Кто-нибудь может подсказать, где я ошибаюсь?