開いているOutlookアイテムウィンドウの最初のタブidMso値を取得するのを手伝ってくれる人はいますか?各アイテムウィンドウをxmlコードに追加するのは冗長であることがわかったので、リボンxmlファイルに動的に設定する必要があります。誰かが共有する既存のソリューションを持っているなら、それは素晴らしいことです。
ありがとう
開いているOutlookアイテムウィンドウの最初のタブidMso値を取得するのを手伝ってくれる人はいますか?各アイテムウィンドウをxmlコードに追加するのは冗長であることがわかったので、リボンxmlファイルに動的に設定する必要があります。誰かが共有する既存のソリューションを持っているなら、それは素晴らしいことです。
ありがとう
解決しました:)
実行時に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">