位置:首頁 > 軟件操作教程 > 編程開發(fā) > C# > 問題詳情

TreeView控件的運(yùn)用

提問人:劉冬梅發(fā)布時間:2020-10-10

(1)設(shè)計(jì)程序界面

向設(shè)計(jì)窗體拖放1個TreeView控件、2個TextBox控件和4個Button控件。其中,TextBox控件的Name分別為txtRoot、txtChild;Button控件的Name屬性分別為btnAddRoot、btnAddChild、btnDelete、btnClear。設(shè)置屬性完成的窗體如圖9-36所示。

從工具箱中向窗體拖放1個ImageList控件,選擇其Image屬性,然后在圖9-34所示的圖像集合編輯器中添加4幅圖像。設(shè)置TreeView控件的ImageList屬性為imageList1。

image.png

(2)編寫代碼

添加按鈕的事件處理程序代碼:

//添加按鈕的事件。

private void btnAddRoot_Click(object sender, System.EventArgs e)

{

//構(gòu)造節(jié)點(diǎn)顯示內(nèi)容、取消選定時顯示圖像索引號、選定時顯示圖像索引號

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é)點(diǎn)之前必須先選中一個節(jié)點(diǎn)。","提示信息");

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é)點(diǎn)之前先選中一個節(jié)點(diǎn)。","提示信息");

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();

}

程序運(yùn)行結(jié)果如圖9-38所示。

image.png

繼續(xù)查找其他問題的答案?

相關(guān)視頻回答
回復(fù)(0)
返回頂部