在word 2007中将RibbonLabel添加到功能区时出现问题

本文关键字:功能区 问题 添加 word 2007 中将 RibbonLabel | 更新日期: 2023-09-27 17:58:38

目前我正在开发Ms Word 2007 Addin。这里我使用一个xml文件来动态生成Ribbon标签。请查找所附的xml代码。

  <LabelGroup>
    <GroupName>grpDocumentInformation</GroupName>
    <GroupLabel>Document  Information</GroupLabel>
    <Labels>
      <Label>
        <LabelName>lblReferenceNo</LabelName>
        <LabelText>Reference No:</LabelText>
      </Label>
      <Label>
        <LabelName>lblReferenceType</LabelName>
        <LabelText>Reference Type:</LabelText>
      </Label>
      <Label>
        <LabelName>lblCreatedBy</LabelName>
        <LabelText>Created By</LabelText>
      </Label>
      <Label>
        <LabelName>lblDocumentType</LabelName>
        <LabelText>Document Type:</LabelText>
      </Label>
    </Labels>
  </LabelGroup><Groups>
    I am getting this xml and my code follows like this:

XmlNodeList labelGroupsList=xmlDoc.DocumentElement.SelectNodes("//Groups/LabelGroup");

foreach(labelGroupsList中的XmlNode组)

        {
            rGroup = new RibbonGroup();
            rGroup.Name = group.SelectSingleNode("GroupName").InnerText;
            rGroup.Label = group.SelectSingleNode("GroupLabel").InnerText;

            XmlNodeList labelElements = group.SelectNodes("Labels");
            foreach (XmlNode labelList in labelElements)
            {
                XmlNodeList labels = labelList.SelectNodes("Label");
                foreach (XmlNode label in labels)
                {
                    rLabel = new RibbonLabel();
                    rLabel.Name = label.SelectSingleNode("LabelName").InnerText;
                    rLabel.Label = label.SelectSingleNode("LabelText").InnerText;
                    rLabel.Enabled = true;
                    rLabel.ShowLabel = true;
                    ***rGroup.Items.Add(rLabel);***
                }
            }
            tab1.Groups.Add(rGroup);
        }

当我将标签添加到组时,我遇到了问题。如果该行被注释,我将获得一个空组。

请帮我把标签添加到组中。

谢谢,K.S.Reddi Prasad。

在word 2007中将RibbonLabel添加到功能区时出现问题

说实话,我认为你让它比需要的要困难得多。

实际上,一旦控件被定义并传递给Word,您就无法"添加"它们,因此通常最好在xml或功能区设计器中预先"预定义"所有可能需要的控件,然后在Word中发生事情时隐藏/显示或禁用/启用适用的控件。它确实简化了整个功能区创建过程。