我有一个Outlook插件,我需要在Outlook主窗口和Mail Read窗口中显示一个功能区。为此,我添加了两个带有正确标记的功能区xml文件。然后我添加了一个实现Office.IRibbonExtensibility接口的C#类,我在其中实现了返回正确XML的GetCustomUI方法。最后我在ThisAddIn.cs类中做了这个
protected override Office.IRibbonExtensibility CreateRibbonExtensibilityObject()
{
try
{
_ribbon = new Ribbon();
return _ribbon;
}
catch (Exception e)
{
}
return null;
}
到目前为止一切顺利。丝带加载,一切都显示在正确的位置。
现在问题是这个Ribbon.cs文件变得相当庞大,因为所有回调都存在于此文件中。有没有办法将回调分成多个类?所以,如果我有一个Ribbon1.xml和RIbbon2.xml,我可以使用等效的Ribbon1.cs和Ribbon2.cs吗?
答案 0 :(得分:3)
好的,因为事实证明这在VSTO模型中实际上是不可能的。你真的只能拥有一个必须拥有所有事件处理程序的类。建议的方法是使用部分类并在多个代码文件之间拆分代码。