Calendar 在“约会”选项卡附近显示outlook功能区
我通过ribbonXML创建了新的outlook功能区 我想展示这条丝带 1.在约会\会议窗口中 2.从日历视图中选择约会时,在“约会”选项卡附近的日历项目中 我可以显示这两个选项,但不能同时显示在一个功能区中 “ContextualTables”-在calendarItems中显示选项卡 “TabAddins”-根据C#代码,仅在约会\会议窗口中显示选项卡 我希望在这两种情况下都显示此功能区。我如何才能做到这一点 我的代码:Calendar 在“约会”选项卡附近显示outlook功能区,calendar,outlook,outlook-addin,ribbon,ribbonx,Calendar,Outlook,Outlook Addin,Ribbon,Ribbonx,我通过ribbonXML创建了新的outlook功能区 我想展示这条丝带 1.在约会\会议窗口中 2.从日历视图中选择约会时,在“约会”选项卡附近的日历项目中 我可以显示这两个选项,但不能同时显示在一个功能区中 “ContextualTables”-在calendarItems中显示选项卡 “TabAddins”-根据C#代码,仅在约会\会议窗口中显示选项卡 我希望在这两种情况下都显示此功能区。我如何才能做到这一点 我的代码: <ribbon> <tabs>
<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>
看起来您需要为资源管理器功能区ID值返回适当的功能区XML标记。尝试调试
GetCustomUI
方法并查看传递了哪些值
在MSDN的以下文章中阅读有关Ribbon 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>
<?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>
谢谢,在调试中,当Outlook打开时,使用ribbonID=“Microsoft.Outlook.Explorer”。当我切换到日历视图时,断点不会再次命中,直到我打开一个窗口。我应该如何进行?
<?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>
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");
}