HOW TO:指定您元件的說明檔
在多數情況下,您應讓使用您元件的開發人員啟用執行階段說明。 不過在某些情況下則較適合讓您的元件於被呼叫時顯示 HTML 說明。 元件的 HTML 說明可透過 System.Windows.Forms.Help 物件來提供。 這個物件是一種封裝 HTML Help 1.x 引擎的靜態 (Static) 類別。 這種類別無法被執行個體化,而且必須直接呼叫其方法。 若要顯示說明,請叫用 (Invoke) Help.ShowHelp 方法。 這個多載方法至少需要兩個引數:當做說明對話方塊父控制項 (Control) 的控制項以及說明檔的 URL。 說明檔可以是已編譯的 HTML Help 1.x 檔案 (.chm 檔) 或 HTML 說明格式的 HTML 檔。
如果您要將說明檔的支援直接加入到您的元件當中,您在選擇何時及如何顯示時有以下兩個選項:
慣用的選項實作可由用戶端應用程式呼叫的說明方法。 用戶端應用程式能夠將參數傳遞至說明方法,確定所顯示的主題無誤,而使用您撰寫的元件程式碼的開發人員則可選擇是否要跳過所有說明。
另外一個選項則是依據程式碼中發生的情況叫用 ShowHelp 方法。 這種方法是最能夠讓您控制顯示的說明內容以及時間,但在未來開發人員使用您元件的方面卻有著大幅限制。
若要指定並顯示您元件的說明檔
建立並編譯您的 .chm 說明檔。
如果您的元件還沒有 System.Windows.Forms 命名空間的參考,請先加入參考。
建立公用方法來顯示說明。 這個方法應讓開發人員能夠易於指定他們所需要顯示的說明為何。
' This method takes parameters from the client application that allow ' the developer to specify when Help is displayed. Public Sub DisplayHelp (ByVal parent as System.Windows.Forms.Control, _ ByVal topic as MyHelpEnum) ' The file to display is chosen by the value of the topic ' parameter. Select Case topic Case MyHelpEnum.enumWidgets Windows.Forms.Help.ShowHelp(parent, "C:\Help\Widgets.chm") Case MyHelpEnum.enumMechanisms ' Insert code to implement additional functionality. End Select End Sub
// This method takes parameters from the client application that allow // the developer to specify when Help is to be shown. public void MyHelp(System.Windows.Forms.Control parent, myHelpEnum topic) { // The file to display is chosen by the value of the topic. switch (topic) { case myHelpEnum.enumWidgets: System.Windows.Forms.Help.ShowHelp(parent, " C:\\help\\widgets.chm "); break; case myHelpEnum.enumMechanism: // Insert code to implement additional functionality. break; } }