TreeView控件的運用
(1)設計程序界面
向設計窗體拖放1個TreeView控件、2個TextBox控件和4個Button控件。其中,TextBox控件的Name分別為txtRoot、txtChild;Button控件的Name屬性分別為btnAddRoot、btnAddChild、btnDelete、btnClear。設置屬性完成的窗體如圖9-36所示。
從工具箱中向窗體拖放1個ImageList控件,選擇其Image屬性,然后在圖9-34所示的圖像集合編輯器中添加4幅圖像。設置TreeView控件的ImageList屬性為imageList1。
(2)編寫代碼
添加按鈕的事件處理程序代碼:
//添加按鈕的事件。
private void btnAddRoot_Click(object sender, System.EventArgs e)
{
//構造節(jié)點顯示內容、取消選定時顯示圖像索引號、選定時顯示圖像索引號
TreeNode newNode=new TreeNode(this.txtRoot.Text,0,1);
this.treeView1.Nodes.Add(newNode);
this.treeView1.Select();
private void btnAddChild_Click(object sender, System.EventArgs e)
{
TreeNode selectedNode=this.treeView1.SelectedNode;
if(selectedNode==null)
{
MessageBox.Show("添加子節(jié)點之前必須先選中一個節(jié)點。","提示信息");
return;
}
TreeNode newNode=new TreeNode(this.txtChild.Text,2,3);
selectedNode.Nodes.Add(newNode);
selectedNode.Expand();
this.treeView1.Select();
}
private void btnDelete_Click(object sender,System.EventArgs e)
{
TreeNode selectedNode=this.treeView1.SelectedNode;
if(selectedNode==null)
{
MessageBox.Show("刪除節(jié)點之前先選中一個節(jié)點。","提示信息");
return;
}
TreeNode parentNode=selectedNode.Parent;
if(parentNode==null)
this.treeView1.Nodes.Remove(selectedNode);
else
parentNode.Nodes.Remove(selectedNode);
this.treeView1.Select();
private void btnClear_Click(object sender, System.EventArgs e)
{
treeView1.Nodes.Clear();
}
程序運行結果如圖9-38所示。
點擊加載更多評論>>