更新:2007 年 11 月
利用 ASP.NET TreeView 控制項,您可以輕鬆地在使用者按一下節點時做出回應,或是變更節點的行為使其執行起來就像超連結 (Hyperlink) 一樣。此外,您還可以使用 TreeView 控制項在個別節點旁顯示核取方塊,讓使用者一次選取多個節點。
選取和巡覽
每一個節點都有 Text 屬性和 Value 屬性。Text 屬性的值會顯示在 TreeView 控制項中,而 Value 屬性則可用來儲存關於節點的任何其他資料,如傳遞給與節點關聯之回傳事件的資料。
按一下 TreeView 控制項的節點時,這個節點可以引發選取事件 (透過回傳),或是移至另一個頁面。當沒有設定 href 屬性時,按一下節點會引發 SelectedNodeChanged 事件,而您可以處理這個事件來提供自訂功能。您也可以檢查節點的 Selected 屬性來判斷是否已經選取節點。將此屬性設定為 true 或在節點上呼叫 Select 方法,就會用程式設計的方式選取該節點。
每一個節點也都有 SelectAction 屬性,您可以使用這個屬性來指定按一下節點時所發生的事件,如展開或摺疊節點。如果不想在按一下節點時引發 SelectedNodeChanged 事件來移至另一個頁面,請將節點的 href 屬性設定為空字串 ("") 以外的值。
如需處理選取事件的詳細資訊,請參閱 SelectedNode。如需巡覽模式的詳細資訊,請參閱 href。如需在繫結資料時設定 href 屬性的詳細資訊,請參閱 hrefField。
核取方塊
如果您想讓使用者選取多個節點,則可以使用 TreeView 控制項在節點影像旁邊顯示核取方塊。只要將 ShowCheckBoxes 屬性設定為 TreeNodeType (而不是 TreeNodeType.None),指定的節點旁就會顯示核取方塊。顯示核取方塊時,您可以使用 TreeNodeCheckChanged 事件,每當核取方塊狀態在對伺服器的公佈作業之間發生變更時,即執行自訂常式。下一次頁面公佈至伺服器時,就會在 CheckedNodes 屬性中填入選取的節點。
TreeView 控制項沒有公開 (Expose) AutoPostBack 屬性。因此,若要送出核取方塊的選取範圍,您必須在頁面上放置像是 Button Web 伺服器控制項這類的控制項,才能將資訊公佈至伺服器。
如需以 ASP.NET TreeView 控制項使用核取方塊的詳細資訊,請參閱 CheckBoxes。