#.net #ms-office #add-in
#.net #ms-office #надстройка
Вопрос:
Каков порядок инициализации надстройки и ленты? Всегда ли объект надстройки создается перед лентой, или это может отличаться?
Ответ №1:
Лента создается путем вызова RequestService
метода объекта addin для IRibbonExtensibility
реализации.
Таким образом, надстройка уже должна существовать.
В шаблонах Ribbon XML вы можете использовать это в файле Ribbon CS:
public partial class ThisAddIn {
private RibbonManager ribbon;
///<summary>Returns an object that extends a feature in the 2007 Microsoft Office system.</summary>
///<param name="serviceGuid">A System.Guid that identifies an extensibility interface
///that is supported by applications in the 2007 Microsoft Office system.</param>
///<returns>An object that implements the extensibility interface that is identified by serviceGuid.</returns>
protected override object RequestService(Guid serviceGuid) {
if (!String.IsNullOrEmpty(JournalPath) amp;amp; serviceGuid == typeof(IRibbonExtensibility).GUID) {
if (ribbon == null)
ribbon = new RibbonManager();
return ribbon;
}
return base.RequestService(serviceGuid);
}
}