TreeView組件是由多個類來定義的TreeView組件是由命名空間SystemWindowsForms中的TreeView類來定義的而其中的節點(即Node)是由命名空間SystemWindowsForms中的TreeNode來定義的所以當在程序中創建一個TreeView對象其實只是創建了一個可以放置節點的容器而在這個容器中加入一個節點其實就是加入了從TreeNode類中創建的一個節點對象同樣刪除一個節點也就是刪除一個TreeNode節點對象
一. 本文中介紹的程序設計及運行環境
()微軟視窗 服務器版
()Net Framework SDK 正式版
二. C#操作TreeView組件中的一些常用方法以及具體實現
TreeView組件雖然是一個操作起來比較麻煩的組件但歸根到底可以總結為三種基本操作加入子節點加入兄弟節點和刪除節點掌握了這三種常用操作對於在編程中靈活運用TreeView組件是十分必要的下面就分別來加以介紹
()加入子節點
所謂子節點就是處於選定節點的下一級節點加入子節點的具體過程是首先要在TreeView組件中定位要加入的子節點的位置然後創建一個節點對象然後利用TreeVeiw類中對節點的加入方法(即Add ( )方法)加入此節點對象下面就是在treeView組件中加入一個子節點的具體代碼
//首先判斷是否選定組件中的位置
if ( treeViewSelectedNode == null )
{
MessageBoxShow ( 請選擇一個節點 提示信息 MessageBoxButtonsOK MessageBoxIconInformation ) ;
}
else
{
//創建一個節點對象並初始化
TreeNode tmp ;
tmp = new TreeNode ( 節點名稱 ) ;
//在TreeView組件中加入子節點
treeViewSelectedNodeNodesAdd ( tmp ) ;
treeViewSelectedNode = tmp ;
treeViewExpandAll ( ) ;
}
()加入兄弟節點
所謂兄弟節點就是在選定的節點的平級的節點加入兄弟節點的方法和加入子節點的方法基本一致只是在最後的實現方法上有著略微的區別加入兄弟節點的具體步驟首先也是要確定要加入的兄弟節點所處的位置接著定義一個節點對象最後調用TreeView類中對兄弟節點加入的方法加入此節點對象加入兄弟節點和加入子節點的最大區別就在於這最後一步希望讀者能夠注意下面是在TreeView組件加入一個兄弟節點的具體代碼
//首先判斷是否選定組件中節點的位置
if ( treeViewSelectedNode == null )
{
MessageBoxShow ( 請選擇一個節點 提示信息 MessageBoxButtonsOK MessageBoxIconInformation ) ;
}
else
{
//創建一個節點對象並初始化
TreeNode tmp ;
tmp = new TreeNode ( textBoxText ) ;
//在TreeView組件中加入兄弟節點
treeViewSelectedNodeParentNodesAdd ( tmp ) ;
treeViewExpandAll ( ) ;
}
()刪除節點
刪除節點就是刪除TreeView組件中選定的節點刪除節點可以是子節點也可以是兄弟節點但無論節點的性質如何必須保證要刪除的節點沒有下一級節點否則必須先刪除此節點中的所有下一級節點然後再刪除此節點刪除節點比起上面的二個操作要顯得略微簡單具體方法是首先判斷要刪除的節點是否存在下一級節點如果不存在就調用TreeView類中的Remove ( )方法就可以刪除節點了下面是刪除TreeView組件中節點的具體代碼
//判斷選定的節點是否存在下一級節點
if ( treeViewSelectedNodeNodesCount == )
//刪除節點
treeViewSelectedNodeRemove ( ) ;
else
MessageBoxShow ( 請先刪除此節點中的子節點! 提示信息 MessageBoxButtonsOK MessageBoxIconInformation ) ;
()TreeView組件的一些其他常用操作
其他的一些常用操作比起上面的三種操作在具體實現上要顯得簡單許多這些常用操作無非是展開所有節點展開指定的節點和折疊所有節點下面就來具體介紹一下
< I > 展開所有節點
要展開TreeView組件中的所有節點首先就要把選定的節點指針定位在TreeView組件的根節點上然後調用選定組件的ExpandAll方法就可以了下面是具體代碼
//定位根節點
treeViewSelectedNode = treeViewNodes [ ] ;
//展開組件中的所有節點
treeViewSelectedNodeExpandAll ( ) ;
< II > 展開選定節點的下一級節點
由於只是展開下一級節點所以就沒有必要用ExpandAll ( )方法了展開下一級節點只需要調用Expand ( )方法就可以了下面是具體的實現代碼
treeViewSelectedNodeExpand ( ) ;
< III > 折疊所有節點
折疊所有節點和展開所有節點是一組互操作具體實現的思路也大致相同折疊所有節點也是首先要把選定的節點指針定位在根節點上然後調用選定組件的Collapse ( )就可以了下面是具體的實現代碼
//定位根節點
treeViewSelectedNode = treeViewNodes [ ] ;
//折疊組件中所有節點
treeViewSelectedNodeCollapse ( ) ;
至此已經把在C#操作TreeView組件的常用方法和一般方法基本都介紹完了
From:http://tw.wingwit.com/Article/program/net/201311/14771.html