求助:点击treeView某节点,在listview中显示其所有子节点
在C#中要实现点击treeView中的某一节点,在listview中显示该节点下所有的子节点,该怎么做,需要定义事件吗,如果需要具体怎么做
[解决办法]
用一个递归,把你点击的节点的子结点写入到listview中不就可以了.
这还需要定义事件吗?你响应treeview的nodemouseclick事件或者是afterselect事件不就可以了.
下面是代码,不知道是不是你要的.
/// <summary>
/// 递归方法
/// </summary>
/// <param name="parent"></param>
private void ReadChildNodeList(TreeNode parent,ListView listView)
{
foreach(TreeNode node in parent.Nodes)
{
listView.Items.Add(node.Text);
ReadChildNodeList(node, listView);
}
}
/// <summary>
/// treeview的AfterSelect事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
{
this.listView1.Items.Clear();
ReadChildNodeList(e.Node, this.listView1);
}
[解决办法]