Powerpoint 加载项

Powerpoint AddIn

我是 powerpoint 插件的新手,希望添加自定义任务窗格。

https://msdn.microsoft.com/en-us/library/Microsoft.Office.Tools.CustomTaskPane(v=vs.110).aspx

从上方 link 您可以使用

添加自定义窗格
  this.CustomTaskPanes.add()

尝试通过功能区控件单击时,我在智能感知中找不到 CustomTaskPanes。

有什么想法吗?

CustomTaskPanes collection 是 ThisAddIn class 上的 属性。 因此,您将能够使用 "this." 语法在 ThisAddIn_Startup 方法中访问它。如果您没有在 intellisense/autocomplete 中看到 collection。

问题可能是由于以下原因引起的:

  1. 您没有使用 VSTO(Visual Studio Office 工具)2005 SE。

  2. 您使用的是 VSTO 2005 SE,但您安装在未完全删除的先前 VSTO v3 CTP 之上。

  3. 您正在为不支持自定义任务窗格的应用程序(所有 Office 2003 应用程序、Visio 2007)构建 add-in。

这是创建 "Log Pane" 并将控件加载到其中的示例代码。它被定义为 ThisAddin.cs class 的新 属性,因此您可以通过 Global.ThisAddin.LogPane

调用它
    private OfficeTools.CustomTaskPane _logPane;

    public OfficeTools.CustomTaskPane LogPane
    {
        get
        {
            if(_logPane==null)
            {

                //my winforms component to load into the pane
                var logViewerComp = new LogViewerComp();

                _logPane = CustomTaskPanes.Add(logViewerComp, "Log Pane");

                //makes the log component fill the all pane size
                logViewerComp.Dock = DockStyle.Fill;

                //sets the opening position of the pane into PPT view
                _logPane.DockPosition = Office.MsoCTPDockPosition.msoCTPDockPositionBottom;

                //does something when the pane shows/hides
                //in this case refreshes the Ribbon to enable/disable
                //the toggle button status related to the pane
                _logPane.VisibleChanged += (snd, ev) =>
                {
                    Ribbon.Reload();
                };
            }

            return _logPane;
        }
    }

注意:创建窗格时,它属于所有应用程序,并在用户打开的所有演示文稿之间共享。