1

谁能帮我获得打开的 Outlook 项目窗口的第一个选项卡 idMso 值?我需要在功能区 xml 文件中动态设置它,因为我发现将每个项目窗口添加到 xml 代码中是多余的。如果有人有现有的解决方案可以分享,那就太好了。

谢谢

4

1 回答 1

2

解决了:)

只需在运行时编辑 GetCustomUI 的返回字符串,但首先捕获资源管理器项

Public Function GetCustomUI(ByVal ribbonID As String) As String Implements Office.IRibbonExtensibility.GetCustomUI
    Dim strResText As String = ""
    Dim strGetRes As String = ""

    Select Case ribbonID


        Case "Microsoft.Outlook.Appointment"

            strGetRes = GetResourceText("OutlookAddIn.Ribbon1.xml")
            strResText = strGetRes.Replace("TabNewMailMessage", "TabAppointment") 'default value of it is TabNewMailMessage

        Case Else

            strResText = GetResourceText("OutlookAddIn.Ribbon1.xml")

    End Select
    Return strResText
End Function

原始 XML 字符串:

<tab id="customTab" label="myCustomTab" insertBeforeMso="TabNewMailMessage" visible="true">

约会项目窗口上的新 XML 字符串:

<tab id="customTab" label="myCustomTab" insertBeforeMso="TabAppointment" visible="true">
于 2012-09-19T05:14:21.493 回答