我发现可以将自定义任务窗格添加到单个窗口,例如使用此代码段的约会:
public void Inspectors_NewInspector(Microsoft.Office.Interop.Outlook.Inspector Inspector)
{
Microsoft.Office.Tools.CustomTaskPane myCustomTaskPane;
if(Inspector.CurrentItem is Microsoft.Office.Interop.Outlook.AppointmentItem ) {
UserControl uc1 = MyUserControl();
myCustomTaskPane = getAddIn().CustomTaskPanes.Add(uc1, "MyPanel",Inspector);
myCustomTaskPane.DockPosition = Office.MsoCTPDockPosition.msoCTPDockPositionRight;
myCustomTaskPane.DockPositionRestrict = Office.MsoCTPDockPositionRestrict.msoCTPDockPositionRestrictNoChange;
myCustomTaskPane.Visible = true;
}
//Additionally You can add a property change listener to the current Item here
}
但是,我使用“NetOffice”而不是 VSTO 来使插件与各种 Outlook 版本兼容。并且加载项没有该CustomTaskPanes
属性,并且该TaskPanes.Add
属性没有重载以允许在主资源管理器之外的其他窗口上添加自定义窗格。