先上截图有三个根节点,每个根节点下只有四个子节点(都是平级关系)。当选中一个节点后,然后选中一个ComBox的的状态(持续,缺省,关闭),然后点击确定按钮就触发事件。要求:当根节点选中时,它下面的三个子节点就不用再判断了,直接一起触发事件。本来效果已经做出来了,我是这样做的:我用了三个switch语句(判断选中的是持续,缺省,关闭)循环判断每一个子节点(选中根节点不触发任何事件),但是代码不够简洁,且当我选中多个根节点时,就出问题了导致有的case下没有触发事件。各位有没有好的办法来解决这个问题。我也不知道这样说,各位有没有明白我的问题,不懂得可以问,在线等。
循环触发事件
循环触发事件
解决方案 »
- webBrowser如何实现文件下载
- TextBox中的数据绑定并更新数据库问题
- 如何实现 在关闭子窗口后自动设置调用窗口的一些参数?
- C#怎么取外部程序的listview,treeview的内容?
- aspx打开word或者excel文件
- 在winform中怎样给树形节点加图标啊?
- C#要响应COM事件,COM不是ATL的,Wapper类用c#如何写?是要给COM传递一个event sink实例吗?
- 多線程時如何存取 Windows Form 的控制項?
- 如何使用c#直接读写DBF文件
- 求解这段C#程序的问题
- winform 的datagridview 如何通过语句把某一列改为DataGridViewComboBoxColumn这种类型
- 有一张大图,怎么按照我的窗体大小,去截取里面的图片,让他从右上角开始。
--1
--2
--3
--4
root2
--5
--6
选中root1,root2 集合[1,2,3,4,5,6],然后再判断触发哪些事件是必须的,然后循环触发,只维护好一个集合
{
全选/全不选子节点(e.Node);
}
else
{
子节点要干的活(e.Node);
}
下面是触发事件的一个样子选中的节点我放在int []intArry里了,这个大家就不用操心了
switch(int i in intArry)
{
case "根节点A"//看见根节点,我直接返回,
beak;
case "子节点1"
“这里我触发一个事件,发送一条指令1”
break;
case "子节点2"
“这里我触发一个事件,发送一条指令2”
break;
case "子节点3"
“这里我触发一个事件,发送一条指令3”
break;
}
这样执行,当根节点选中的时候,且子节点过多的时候,程序响应有点慢,有没有好的办法
就可以得到子节点的集合。
treeView1.Nodes[0].Nodes
循环子节点
每个子节点都发送一次。
On_send(treeView1.Nodes[0].Nodes[n])
点确定时,遍历节点,并且触发事件,在事件参数中,将节点传进去,在处理事件中,判断e.Node.Level