c#中不同的button控件怎么在同一个窗体显示不同treeview内容

窗体有几个button控件
点击不同的button控件,窗体中显示同一个treeview控件,里面的节点不同.
如,有3个button控件 button1,button2,button3, treeview 有3个节点1.0,2.0,3.0
每个节点底下有几个小节点如 1.0下面有1.1,1.2,1.3. 2.0下面有2.1,2.2,2.3
3.0下面有3.1,3.2,3.3
我点击button1时只显示1.0下面的节点 1.1,1.2,1.3
点击button2时只显示2.0下面的节点 2.1,2.2,2.3
请那位朋友给个详细点的举例.谢谢了`

BUTTON的CLICK事件里面
点击的时候,首先清空整个treeview
TreeView1.Nodes.Clear();
然后重新添加
TreeNode newNode = new TreeNode("Text for new node");
treeView1.SelectedNode.Nodes.Add(newNode);
一个一个添加。
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-10-18
button事件里 用递归展开指定节点的父节点
第2个回答  2010-10-18
其中
3个button的Click事件都设置为button_Click,Tag属性设置为List中的顺序下标,在这是button1.Tag = 0,..2.Tag = 1, ..3.Tag = 2

代码如下:

List<TreeNode> list = new List<TreeNode>(); //用于存放TreeNode的集合

TreeNode treeNode1 = new TreeNode("1.0");
TreeNode treeNode2 = new TreeNode("2.0");
TreeNode treeNode3 = new TreeNode("3.0");

private void Form1_Load(object sender, EventArgs e)
{
//创建节点
treeNode1.Nodes.Add("1.1");
treeNode1.Nodes.Add("1.2");
treeNode1.Nodes.Add("1.3");
treeNode2.Nodes.Add("2.1");
treeNode2.Nodes.Add("2.2");
treeNode2.Nodes.Add("2.3");
treeNode3.Nodes.Add("3.1");
treeNode3.Nodes.Add("3.2");
treeNode3.Nodes.Add("3.3");
//加入集合
list.Add(treeNode1);
list.Add(treeNode2);
list.Add(treeNode3);
}

private void button_Click(object sender, EventArgs e)
{
treeView1.Nodes.Clear(); //清除树视图节点
treeView1.Nodes.Add(list[Convert.ToInt32((sender as Button).Tag)]); //添加树视图节点
treeView1.ExpandAll(); //节点
}本回答被提问者采纳
相似回答