#c# #outlook #vsto #outlook-addin
#c# #outlook #vsto #outlook-добавление
Вопрос:
Я хочу добавить свою пользовательскую кнопку ленты на вкладке «Отчет» Outlook. Я могу добавить кнопку ленты на вкладке «Главная» Outlook. Здесь я прикрепил изображение, на котором я хочу добавить свою пользовательскую кнопку ленты.
Спасибо
Ответ №1:
XML-код ленты находится здесь,
<ribbon>
<tabs>
<tab idMso="TabReadMessage">
<group id="grpMessageRibbon" Label="My Group">
<button id="btnTest" Label="My Button" size="large" />
</group>
</tab>
</tabs>
</ribbon>
Загрузка XML ленты на основе идентификатора ленты.
public string GetCustomUI(string ribbonID)
{
string ribbonXML = String.Empty;
if (ribbonID == "Microsoft.Outlook.Report")
{
ribbonXML = GetResourceText("MicrosoftOutlookReport.xml");
}
return ribbonXML;
}
Спасибо
Ответ №2:
idMso встроенной вкладки, показанной на скриншоте, является TabReadMessage
. Вам просто нужно вернуть соответствующую разметку XML ленты в GetCustomUI
обратном вызове.
Приложения Microsoft Office вызывают метод GetCustomUI для получения XML-строки, которая определяет пользовательский интерфейс вашей пользовательской ленты.
public class Connect : Object, Extensibility.IDTExtensibility2, IRibbonExtensibility
...
public string GetCustomUI(string RibbonID)
{
StreamReader customUIReader = new System.IO.StreamReader("C:\RibbonXSampleCS\customUI.xml");
string customUIData = customUIReader.ReadToEnd();
return customUIData;
}
Обратите внимание, иногда вам нужно вернуть разметку XML для разных ribbonID
значений, передаваемых в качестве аргумента. В этом случае вы получите onLoad
обратный вызов (также для инспекторов).
public string GetCustomUI(string ribbonID)
{
string ribbonXML = String.Empty;
if (ribbonID == "Microsoft.Outlook.Mail.Read")
{
ribbonXML = GetResourceText("Trin_RibbonOutlookBasic.Ribbon1.xml");
}
return ribbonXML;
}
Для получения дополнительной информации см. раздел Настройка ленты для Outlook.
Вы можете прочитать больше о Fluent UI (он же Ribbon UI) в следующей серии статей в MSDN:
- Настройка ленты Office 2007 Fluent для разработчиков (часть 1 из 3)
- Настройка ленты Office 2007 Fluent для разработчиков (часть 2 из 3)
- Настройка ленты Office 2007 Fluent для разработчиков (часть 3 из 3)
Пожалуйста, помните, что по умолчанию, если надстройка VSTO пытается управлять пользовательским интерфейсом Microsoft Office и терпит неудачу, сообщение об ошибке не отображается. Однако вы можете настроить приложения Microsoft Office для отображения сообщений об ошибках, связанных с пользовательским интерфейсом. Вы можете использовать эти сообщения, чтобы помочь определить, почему пользовательская лента не отображается или почему лента отображается, но не отображаются элементы управления. Смотрите Как: Показать ошибки пользовательского интерфейса надстройки для получения дополнительной информации.