Outlook 2010后台如何捕获"Print Tab"点击事件?

How to capture "Print Tab" click event at the backstage in Outlook 2010 ?

我想在outlook 2010后台抓取"TabPrint"中的点击事件

Followint 是我目前所做的

我在 xml 中定义了一个自定义 UI,如下所示。我已将每个事件定向到一个方法(即 OnPrintClick)

 <?xml version="1.0" encoding="utf-8" ?>
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui" onLoad="Ribbon_Load">
  <commands>    
    <!-- Mail print related -->
    <command idMso="FilePrint" onAction="OnPrintClick"/>
    <command idMso="FilePrintCustomRange" onAction="OnPrintClick"/>
    <command idMso="FilePrintPreview" onAction="OnPrintClick"/>
    <command idMso="FilePrintQuick" onAction="OnPrintClick"/>
    <command idMso="GroupPrint" onAction="OnPrintClick"/>
    <command idMso="GroupPrintPreview" onAction="OnPrintClick"/>
    <command idMso="GroupPrintProtectedView" onAction="OnPrintClick"/>
    <command idMso="GroupPrintSettings" onAction="OnPrintClick"/>
    <command idMso="PrintCategory" onAction="OnPrintClick"/>
    <command idMso="PrintDialogAccess" onAction="OnPrintClick"/>
  </commands>
</customUI>

OnPrintClick 方法位于 Connect class 解决方案中。以下是此方法接受的参数。

 public void OnPrintClick(IRibbonControl control , ref bool cancel)
    {
        MessageBox.Show("PRINT !");
    }

当我执行这段代码时,它没有捕获我定义的任何点击事件。我在这里做错了什么吗?任何帮助将不胜感激。

command标签在后台UI控件的情况下将不起作用。您只能重新调整功能区(而非后台)上的控件的用途。有关详细信息,请参阅 Temporarily Repurpose Commands on the Office Fluent Ribbon

一个可能的解决方案是考虑隐藏内置 UI 并使用自定义命令完全重建它。在 MSDN 中的以下系列文章中阅读有关 Backstage UI 的更多信息: