逐步解說:同步處理自定義工作窗格與功能區按鈕
本逐步解說示範如何建立自定義工作窗格,讓使用者可以按兩下功能區上的切換按鈕來隱藏或顯示。 您應該一律建立使用者介面 (UI) 元素,例如按鈕,讓使用者按一下即可顯示或隱藏自訂工作窗格;因為 Microsoft Office 應用程式不提供使用者顯示或隱藏自訂工作窗格的預設方式。
適用於: 本主題中的資訊適用於 Outlook 的 VSTO 載入宏專案。 如需詳細資訊,請參閱 Office 應用程式 lication 和項目類型所提供的功能。
雖然這個逐步解說特地使用 Excel,但所示範的概念同樣適用以上所列的任何應用程式。
本逐步解說將說明下列工作:
設計自訂工作窗格的 UI。
在功能區加入切換按鈕。
同步處理切換按鈕和自訂工作窗格。
注意
在下列指示的某些 Visual Studio 使用者介面項目中,您的電腦可能會顯示不同的名稱或位置: 您所擁有的 Visual Studio 版本以及使用的設定會決定這些項目。 如需詳細資訊,請參閱將 Visual Studio IDE 個人化。
必要條件
您需要下列元件才能完成這個逐步解說:
此版 Visual Studio 包含 Microsoft Office Developer Tools。 如需詳細資訊,請參閱 設定計算機來開發 Office 解決方案。
Microsoft Excel 或 Microsoft Excel 2013 。
建立載入宏專案
在此步驟中,您將建立適用於 Excel 的 VSTO 載入宏專案。
建立新的專案
使用 Excel 增益集專案範本建立名為 SynchronizeTaskPaneAndRibbon的 Excel 增益集專案。 如需詳細資訊,請參閱 如何:在Visual Studio中建立 Office專案。
Visual Studio 會開啟 ThisAddIn.cs 或 ThisAddIn.vb 程式代碼檔案,並將 SynchronizeTaskPaneAndRibbon 專案新增至 方案總管。
將切換按鈕新增至功能區
其中一個 Office 應用程式設計方針是使用者應一律具有 Office 應用程式 UI 的控制項。 為讓使用者能夠控制自訂工作窗格,您可以加入會顯示和隱藏工作窗格的功能區切換按鈕。 若要建立切換按鈕,請將 [功能區 (視覺化設計工具)] 項目加入專案。 設計工具可協助您加入及定位控制項、設定控制項屬性及處理控制項事件。 如需詳細資訊,請參閱 功能區設計工具。
將切換按鈕新增至功能區
在 [專案] 功能表上,按一下 [加入新項目]。
選取 [ 加入新項目 ] 對話方塊中的 [ 功能區 (視覺化設計工具)]。
將新功能區的名稱變更為 ManageTaskPaneRibbon,然後按一下 [加入] 。
ManageTaskPaneRibbon.cs 或 ManageTaskPaneRibbon.vb 檔案會在功能區設計工具中開啟,並顯示預設的索引標籤和群組。
在功能區設計工具中,按一下 [group1] 。
在 [屬性] 視窗中,將 [標籤] 屬性設定為「工作窗格管理員」 。
從 [工具箱] 的 [Office 功能區控制項] 索引標籤,將 ToggleButton 拖曳至 [工作窗格管理員] 群組。
按一下 [toggleButton1] 。
在 [屬性] 視窗中,將 [標籤] 屬性設定為「顯示工作窗格」 。
設計自定義工作窗格的使用者介面
自訂工作窗格沒有視覺化的設計工具,但是您可以根據需要設計使用者控制項的版面配置。 稍後在本逐步解說中,您會將使用者控制項加入自訂工作窗格。
設計自訂工作窗格的使用者介面
在 [專案] 功能表上,按一下 [加入使用者控制項] 。
在 [加入新項目] 對話方塊中,將使用者控制項的名稱變更為 TaskPaneControl,然後按一下 [加入] 。
使用者控制項隨即在設計工具中開啟。
從 [工具箱] 的 [通用控制項] 索引標籤,將 TextBox 控制項拖曳至使用者控制項。
建立自定義工作窗格
若要在 VSTO 增益集啟動時建立自訂工作窗格,請在 VSTO 增益集的 Startup 事件處理常式中,將使用者控制項加入工作窗格。 自訂工作窗格預設不顯示。 稍後在本逐步解說中,您會新增程式代碼,當使用者按兩下新增至功能區的切換按鈕時,將會顯示或隱藏工作窗格。
建立自訂工作窗格
展開 [方案總管] 中的 [Excel] 。
以滑鼠右鍵按一下 ThisAddIn.cs 或 ThisAddIn.vb ,然後按一下 [檢視程式碼] 。
將下列程式碼加入
ThisAddIn
類別。 這段程式碼會宣告TaskPaneControl
執行個體為ThisAddIn
成員。以下列程式碼取代
ThisAddIn_Startup
事件處理常式。 這段程式碼將TaskPaneControl
物件加入CustomTaskPanes
欄位,但它不顯示自訂工作窗格 ( Visible 類別的 CustomTaskPane 屬性預設是 false)。 Visual C# 程式碼也會將事件處理常式連結到 VisibleChanged 事件。將下列方法新增至
ThisAddIn
類別。 這個方法會處理 VisibleChanged 事件。 當使用者按一下 [關閉] 按鈕 (X) 關閉工作窗格時,這個方法會更新功能區的切換按鈕狀態。將下列屬性加入
ThisAddIn
類別。 這個屬性會向其他類別公開私用的taskPaneValue
物件。 稍後在本逐步解說中,您會將程式碼加入使用這個屬性的MyRibbon
類別。
使用切換按鈕隱藏和顯示自定義工作窗格
最後一個步驟是加入在使用者按一下功能區的切換按鈕時,顯示或隱藏自訂工作窗格的程式碼。
使用切換按鈕顯示和隱藏自訂工作窗格
在功能區設計工具中,按兩下 [顯示工作窗格] 切換按鈕。
Visual Studio 會自動產生名為
toggleButton1_Click
的事件處理常式,以處理切換按鈕的 Click 事件。 Visual Studio 也會在程式碼編輯器中開啟 MyRibbon.cs 或 MyRibbon.vb 檔案。以下列程式碼取代
toggleButton1_Click
事件處理常式。 當使用者按一下切換按鈕時,這段程式碼會顯示或隱藏自訂工作窗格,取決於按下或不按切換按鈕。
測試載入宏
當您執行專案時,Excel 會開啟但不顯示自訂工作窗格。 按兩下功能區上的切換按鈕來測試程式代碼。
測試 VSTO 增益集
按 F5 執行您的專案。
確認 Excel 已開啟,且 [ 載入宏] 索引標籤 會出現在功能區上。
按兩下功能區上的 [ 載入宏] 索引標籤 。
在 [工作窗格管理員] 群組中,按一下 [顯示工作窗格] 切換按鈕。
請確認當您按一下切換按鈕時,工作窗格會切換顯示和隱藏。
當工作窗格出現時,請按一下工作窗格角落的 [關閉] 按鈕 (X)。
確認切換按鈕出現時未被按下。
下一步
您可以透過下列主題,進一步了解如何建立自訂工作窗格:
針對不同的應用程式,在 VSTO 載入宏中建立自定義工作窗格。 如需支援自定義工作窗格之應用程式的詳細資訊,請參閱 自定義工作窗格。
運用自訂工作窗格自動化應用程式。 如需詳細資訊,請參閱 逐步解說:從自定義工作窗格自動執行應用程式。
針對在 Outlook 中開啟的每一封電子郵件建立自訂工作窗格。 如需詳細資訊,請參閱 逐步解說:在 Outlook 中使用電子郵件訊息顯示自定義工作窗格。