共用方式為


逐步操作指南:從自訂工作窗格將應用程式自動化

本逐步解說示範如何建立自訂工作窗格,以自動化 PowerPoint。 當使用者按一下 MonthCalendar 自訂工作窗格上的控制項時,自訂工作窗格會在投影片中插入日期。

適用於: 本主題中的資訊適用於 Outlook 的 VSTO 增益集專案。 如需詳細資訊,請參閱 Office 應用程式和專案類型所提供的功能

雖然本逐步解說特別使用 PowerPoint,但逐步解說所示範的概念適用於上面列出的任何應用程式。

本逐步解說將說明下列工作:

  • 設計自訂工作窗格的使用者介面。

  • 從自訂工作窗格中實現 PowerPoint 自動化。

  • 在 PowerPoint 中顯示自訂工作窗格。

備註

在下列指示的某些 Visual Studio 使用者介面項目中,您的電腦可能會顯示不同的名稱或位置: 您所擁有的 Visual Studio 版本以及使用的設定會決定這些項目。 如需詳細資訊,請參閱將 Visual Studio IDE 個人化

先決條件

您需要下列組件才能完成本步驟解說:

建立增益集專案

第一步是為 PowerPoint 創建一個 VSTO 擴充套件項目。

建立新專案

  1. 使用 PowerPoint 增益集專案範本,建立名稱為 MyAddIn 的 PowerPoint VSTO 增益集專案。 如需詳細資訊,請參閱 如何:在 Visual Studio 中建立 Office 專案

    Visual Studio 會開啟 ThisAddIn.csThisAddIn.vb 程式碼檔案,並將 MyAddIn 專案新增至 [方案總管]。

設計自訂工作窗格的使用者介面

自訂工作窗格沒有視覺化設計工具,但您可以使用您想要的版面配置來設計使用者控制項。 在本逐步解說稍後,您會將使用者控制項新增至自訂工作窗格。

設計自訂工作窗格的使用者介面

  1. [專案 ] 功能表上,按一下 [新增使用者控制項]。

  2. [新增專案] 對話方塊中,將使用者控制項的名稱變更為 MyUserControl,然後按一下 [新增]。

    使用者控制項會在設計工具中開啟。

  3. [工具箱] 的 [通用控制項] 索引標籤中,將 MonthCalendar 控制項拖曳至使用者控制項。

    如果 MonthCalendar 控制項大於使用者控制項的設計介面,請調整使用者控制項的大小以符合 MonthCalendar 控制項。

從自訂工作窗格自動化 PowerPoint

VSTO 增益集的目的是在當前簡報的第一張投影片上插入所選的日期。 使用控制項的 DateChanged 事件,當選取的日期變更時新增。

利用自訂工作窗格來自動化 PowerPoint

  1. 在設計工具中,按兩下 MonthCalendar 控制項。

    MyUserControl.csMyUserControl.vb檔案隨即開啟,並建立事件的DateChanged事件處理常式。

  2. 將下列程式碼新增至檔案頂端。 此程式碼會為Microsoft.Office.CorePowerPoint命名空間建立別名。

    using Office = Microsoft.Office.Core;
    using PowerPoint = Microsoft.Office.Interop.PowerPoint;
    
  3. 將下列程式碼 MyUserControl 新增至類別。 此程式碼會將 Shape 物件宣告為 的成員 MyUserControl。 在以下步驟中,您將使用此 形狀 將文本框添加到活動演示文稿中的幻燈片中。

    private PowerPoint.Shape textbox;
    
  4. 請將 monthCalendar1_DateChanged 事件處理程序替換為以下程式碼。 此程式碼會將文字方塊新增至使用中簡報中的第一張投影片,然後將目前選取的日期新增至文字方塊。 此程式碼使用 Globals.ThisAddIn 物件來存取 PowerPoint 的物件模型。

    private void monthCalendar1_DateChanged(object sender, DateRangeEventArgs e)
    {
        try
        {
            if (textbox != null)
            {
                textbox.Delete();
            }
    
            PowerPoint.Slide slide =
                Globals.ThisAddIn.Application.ActivePresentation.Slides[1];
            textbox = slide.Shapes.AddTextbox(
                Office.MsoTextOrientation.msoTextOrientationHorizontal,
                50, 100, 600, 50);
            textbox.TextFrame.TextRange.Text = e.Start.ToLongDateString();
            textbox.TextFrame.TextRange.Font.Size = 48;
            textbox.TextFrame.TextRange.Font.Color.RGB =
                 Color.DarkViolet.ToArgb();
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.ToString());
        }
    }
    
  5. [方案總管] 中,以滑鼠右鍵按一下 MyAddIn 專案,然後按一下 [建置]。 確認專案建置時沒有錯誤。

顯示自訂工作窗格

若要在 VSTO 增益集啟動時顯示自訂工作窗格,請在 VSTO 增益集的事件處理常式中 Startup 將使用者控制項新增至工作窗格。

顯示自訂工作窗格

  1. [方案總管] 中,展開 [PowerPoint]

  2. 以滑鼠右鍵按一下 ThisAddIn.csThisAddIn.vb ,然後按一下檢視 程式碼

  3. 將下列程式碼 ThisAddIn 新增至類別。 此程式碼將MyUserControlCustomTaskPane的實例宣告為ThisAddIn類別的成員。

    private MyUserControl myUserControl1;
    private Microsoft.Office.Tools.CustomTaskPane myCustomTaskPane;
    
  4. 請將 ThisAddIn_Startup 事件處理程序替換為以下程式碼。 此程式碼會將物件CustomTaskPane新增至MyUserControl集合,以建立新的CustomTaskPanes物件。 程式碼也會顯示工作窗格。

    private void ThisAddIn_Startup(object sender, System.EventArgs e)
    {
        myUserControl1 = new MyUserControl();
        myCustomTaskPane = this.CustomTaskPanes.Add(myUserControl1, "Calendar");
        myCustomTaskPane.Visible = true;
    }
    

測試外掛

當您執行專案時,PowerPoint 會開啟,而 VSTO 增益集會顯示自訂工作窗格。 按一下 MonthCalendar 控制項以測試程式碼。

要測試您的 VSTO 增益集

  1. 請按 F5 執行您的專案。

  2. 確認自訂工作窗格可見。

  3. 按一下工作窗格控制項中的 MonthCalendar 日期。

    日期會插入到使用中簡報中的第一張投影片中。

後續步驟

您可以從下列主題深入瞭解如何建立自訂工作窗格: