在 appointmentTab 附近显示 outlook 功能区
show outlook ribbon near appointmentTab
我通过 ribbonXML 创建了新的 outlook 功能区
我要展示这个功能区
1. 在 Appointment\Meeting window
2. 在 'Appointment' 选项卡附近的 CalendarItems 中,当从日历视图中选择约会时
我可以显示两个选项,但不能在一个功能区中一起显示。
"contextualTabs" - 在 calendarItems 中显示选项卡,
"TabAddins" - 根据 C# 代码
仅在 appointment\meeting window 中显示选项卡
我希望此功能区显示在这两个中cases.How我可以吗?
我的代码:
<ribbon>
<tabs>
<tab idMso="TabAddIns" label="MyTab">
<group id="group1" label="save">
<button id="btnSaveAs" onAction="btnSaveAs_Click"
imageMso="FileSave"/>
</group>
</tab>
</tabs>
<contextualTabs>
<tabSet idMso="TabSetAppointment">
<tab id="TabAppointment" label="MyTab">
<group id="MyGroup" label="save">
<button id="btnSaveAppAs" onAction="btnSaveAs_Click" label="save"
imageMso="FileSave"/>
</group>
</tab>
</tabSet>
</contextualTabs>
</ribbon>
C#:(因为仅在 appointment\meeting window 中显示功能区)
public string GetCustomUI(string ribbonID)
{
if(ribbonID=="Microsoft.Outlook.Appointment")
return GetResourceText("OutlookAddIn.Ribbon.xml");
if (ribbonID == "Microsoft.Outlook.MeetingRequest")
return GetResourceText("OutlookAddIn.Ribbon.xml");
return null;
}
您似乎需要 return 一个适当的功能区 XML 标记用于 Explorer 功能区 ID 值。尝试调试 GetCustomUI
方法并查看传递了哪些值。
在 MSDN 中的以下文章中阅读有关功能区 UI(又名 Fluent UI)的更多信息:
我找到了解决方案。
我将这两个选项放在两个单独的 xml 文件中并修复了 getcustomUI
Ribbon.xml:
<?xml version="1.0" encoding="UTF-8"?>
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui" onLoad="Ribbon_Load">
<ribbon>
<tabs>
<tab idMso="TabAddIns" label="MyTab">
<group id="group1" label="save">
<button id="btnSaveAs" onAction="btnSaveAs_Click"
imageMso="FileSave"/>
</group>
</tab>
</tabs>
</ribbon>
</customUI>
日历工具Ribbon.xml:
<?xml version="1.0" encoding="UTF-8"?>
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui" onLoad="Ribbon_Load">
<ribbon>
<contextualTabs>
<tabSet idMso="TabSetAppointment">
<tab id="TabAppointment" label="MyTab">
<group id="MyGroup" label="save">
<button id="btnSaveAppAs" onAction="btnSaveAs_Click" label="save"
imageMso="FileSave"/>
</group>
</tab>
</tabSet>
</contextualTabs>
</ribbon>
</customUI>
C#:
public string GetCustomUI(string ribbonID)
{
if (ribbonID == "Microsoft.Outlook.Appointment")
return GetResourceText("OutlookAddIn.Ribbon.xml");
if (ribbonID == "Microsoft.Outlook.MeetingRequest.Read")
return GetResourceText("OutlookAddIn.Ribbon.xml");
return GetResourceText("OutlookAddIn.CalendarToolsRibbon.xml");
}
我通过 ribbonXML 创建了新的 outlook 功能区
我要展示这个功能区
1. 在 Appointment\Meeting window
2. 在 'Appointment' 选项卡附近的 CalendarItems 中,当从日历视图中选择约会时
我可以显示两个选项,但不能在一个功能区中一起显示。
"contextualTabs" - 在 calendarItems 中显示选项卡,
"TabAddins" - 根据 C# 代码
仅在 appointment\meeting window 中显示选项卡我希望此功能区显示在这两个中cases.How我可以吗?
我的代码:
<ribbon>
<tabs>
<tab idMso="TabAddIns" label="MyTab">
<group id="group1" label="save">
<button id="btnSaveAs" onAction="btnSaveAs_Click"
imageMso="FileSave"/>
</group>
</tab>
</tabs>
<contextualTabs>
<tabSet idMso="TabSetAppointment">
<tab id="TabAppointment" label="MyTab">
<group id="MyGroup" label="save">
<button id="btnSaveAppAs" onAction="btnSaveAs_Click" label="save"
imageMso="FileSave"/>
</group>
</tab>
</tabSet>
</contextualTabs>
</ribbon>
C#:(因为仅在 appointment\meeting window 中显示功能区)
public string GetCustomUI(string ribbonID)
{
if(ribbonID=="Microsoft.Outlook.Appointment")
return GetResourceText("OutlookAddIn.Ribbon.xml");
if (ribbonID == "Microsoft.Outlook.MeetingRequest")
return GetResourceText("OutlookAddIn.Ribbon.xml");
return null;
}
您似乎需要 return 一个适当的功能区 XML 标记用于 Explorer 功能区 ID 值。尝试调试 GetCustomUI
方法并查看传递了哪些值。
在 MSDN 中的以下文章中阅读有关功能区 UI(又名 Fluent UI)的更多信息:
我找到了解决方案。
我将这两个选项放在两个单独的 xml 文件中并修复了 getcustomUI
Ribbon.xml:
<?xml version="1.0" encoding="UTF-8"?>
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui" onLoad="Ribbon_Load">
<ribbon>
<tabs>
<tab idMso="TabAddIns" label="MyTab">
<group id="group1" label="save">
<button id="btnSaveAs" onAction="btnSaveAs_Click"
imageMso="FileSave"/>
</group>
</tab>
</tabs>
</ribbon>
</customUI>
日历工具Ribbon.xml:
<?xml version="1.0" encoding="UTF-8"?>
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui" onLoad="Ribbon_Load">
<ribbon>
<contextualTabs>
<tabSet idMso="TabSetAppointment">
<tab id="TabAppointment" label="MyTab">
<group id="MyGroup" label="save">
<button id="btnSaveAppAs" onAction="btnSaveAs_Click" label="save"
imageMso="FileSave"/>
</group>
</tab>
</tabSet>
</contextualTabs>
</ribbon>
</customUI>
C#:
public string GetCustomUI(string ribbonID)
{
if (ribbonID == "Microsoft.Outlook.Appointment")
return GetResourceText("OutlookAddIn.Ribbon.xml");
if (ribbonID == "Microsoft.Outlook.MeetingRequest.Read")
return GetResourceText("OutlookAddIn.Ribbon.xml");
return GetResourceText("OutlookAddIn.CalendarToolsRibbon.xml");
}