// читаем файл частичной адаптации
CustomizationSection csPartial = new CustomizationSection("SurveyTools.CUIX");
// получаем ленту, описанную в нем. В нашем случае она пустая
RibbonRoot ribbonRoot = csPartial.MenuGroup.RibbonRoot;
// коллекция панелей для CUIX файла
Autodesk.AutoCAD.Customization.RibbonTabSourceCollection tabCollection = ribbonRoot.RibbonTabSources;
Autodesk.AutoCAD.Customization.RibbonPanelSourceCollection panelCollection = ribbonRoot.RibbonPanelSources;
// создаем источник данных для нашей закладки - она у нас одна будет
RibbonTabSource rtsSurveyTools = new RibbonTabSource(ribbonRoot);
rtsSurveyTools.Name = "SurveyTools";
rtsSurveyTools.Text = "SurveyTools";
rtsSurveyTools.Id = "SurveyTools_ID";
rtsSurveyTools.ElementID = "SurveyTools_ID";
// создаем источник данных для панели
Autodesk.AutoCAD.Customization.RibbonPanelSource rpsInfo = new Autodesk.AutoCAD.Customization.RibbonPanelSource(ribbonRoot);
rpsInfo.Name = rpsInfo.Text = "Информация";
rpsInfo.Id = rpsInfo.ElementID = "ID_SurveyTools_RibbonPanel_Info";
// строка для кнопок
Autodesk.AutoCAD.Customization.RibbonRow rrInfo1 = new RibbonRow(rpsInfo);
// кнопка ID_SurveyTools_RequestLicenseKey
Autodesk.AutoCAD.Customization.RibbonCommandButton rcbRequestLicenseKey = new Autodesk.AutoCAD.Customization.RibbonCommandButton(rrInfo1);
rcbRequestLicenseKey.Text = "Ключ\rлицензии";
rcbRequestLicenseKey.ButtonStyle = RibbonButtonStyle.LargeWithText;
rcbRequestLicenseKey.MacroID = "ID_SurveyTools_RequestLicenseKey";
rcbRequestLicenseKey.TooltipTitle = "Запрос ключа лицензии";
// панель для маленьких кнопок
Autodesk.AutoCAD.Customization.RibbonRowPanel rrpInfo1 = new Autodesk.AutoCAD.Customization.RibbonRowPanel(rrInfo1);
// строка для маленьких кнопок
Autodesk.AutoCAD.Customization.RibbonRow rrInfo2 = new RibbonRow(rrpInfo1);
// кнопка ID_SurveyTools_Help
Autodesk.AutoCAD.Customization.RibbonCommandButton rcbHelp = new Autodesk.AutoCAD.Customization.RibbonCommandButton(rrInfo2);
rcbHelp.Text = "Справочная информация";
rcbHelp.ButtonStyle = RibbonButtonStyle.SmallWithoutText;
rcbHelp.MacroID = "ID_SurveyTools_Help";
rcbHelp.TooltipTitle = "Справочная информация";
// строка для маленьких кнопок
Autodesk.AutoCAD.Customization.RibbonRow rrInfo3 = new RibbonRow(rrpInfo1);
// кнопка ID_SurveyTools_AssemblyInfo
Autodesk.AutoCAD.Customization.RibbonCommandButton rcbAssemblyInfo = new Autodesk.AutoCAD.Customization.RibbonCommandButton(rrInfo3);
rcbAssemblyInfo.Text = "О программе...";
rcbAssemblyInfo.ButtonStyle = RibbonButtonStyle.SmallWithoutText;
rcbAssemblyInfo.MacroID = "ID_SurveyTools_AssemblyInfo";
rcbAssemblyInfo.TooltipTitle = "О программе...";
// вставляем в строку для кнопок кнопку ID_SurveyTools_RequestLicenseKey
rrInfo1.Items.Add(rcbRequestLicenseKey);
rrInfo3.Items.Add(rcbAssemblyInfo);
rrInfo2.Items.Add(rcbHelp);
rrpInfo1.Items.Add(rrInfo2);
rrpInfo1.Items.Add(rrInfo3);
rrInfo1.Items.Add(rrpInfo1);
// вставляем в источник данных для панели строку (которая уже содержит кнопку)
rpsInfo.Items.Add(rrInfo1);
// добавляем в коллекцию панелей наши созданные панели
panelCollection.Add(rpsInfo);
// создаем ссылку для панели Info
RibbonPanelSourceReference rpsRefInfo = new RibbonPanelSourceReference(rtsSurveyTools);
rpsRefInfo.PanelId = rpsInfo.ElementID;
// добавляем эту ссылку в список элементов закладки
rtsSurveyTools.Items.Add(rpsRefInfo);
tabCollection.Insert(0, rtsSurveyTools);
csPartial.Save();