首页 新闻 搜索 专区 学院

关于winform的一个问题

0
悬赏园豆:20 [已解决问题] 解决于 2016-08-11 19:51

 我在一个窗体1(假设名称为frm_Test)中写了一个方法,用来展开treeview的子节点。当然根节点我是自己已经手动写进去,所以count的值应该是为1.代码差不多是这样:public void TreeExpand(){

if (this.treeview1.Nodes.Count>0)

this.treeview1.Nodes[0].Expand();

}

而后我在窗体2的一个按钮调用这个方法,用来作用于frm_Test这个窗体以展开子节点,代码这样:

frm_Test xx=new frm_Test();

xx.TreeExpand();

不过没有效果,不知道原因何在,希望大家不吝赐教。谢谢。

一个单人旅途的主页 一个单人旅途 | 初学一级 | 园豆:53
提问于:2016-08-10 20:45
< >
分享
最佳答案
0

你为什么操作的是一个新new的对象而不是原有的对象呢。

收获园豆:20
Supper_litt | 小虾三级 |园豆:783 | 2016-08-11 08:30

嗯,明白了,就因为没有操作原先的对象。谢谢你的帮助

一个单人旅途 | 园豆:53 (初学一级) | 2016-08-11 19:50
其他回答(3)
0

既然这个窗体是你new出来的,你窗体里的treeview。Nodes确实大于0吗?

还有,我记得form有个show()方法,你还没调用show()就调用了你自己的方法吗?

最后,这种功能理论上让frm_test抛出一个事件比较好。。。

顾晓北 | 园豆:9963 (大侠五级) | 2016-08-11 08:54

嗯,问题解决了。谢谢你的帮助

支持(0) 反对(0) 一个单人旅途 | 园豆:53 (初学一级) | 2016-08-11 19:51

@一个单人旅途: 看那意思,这问题有点奇葩。

支持(0) 反对(0) 顾晓北 | 园豆:9963 (大侠五级) | 2016-08-12 10:45

@顾晓北: 不好意思,可能表达的语言需要多加练习

支持(0) 反对(0) 一个单人旅途 | 园豆:53 (初学一级) | 2016-08-12 15:39
0

检查一下是不是treeview还没准备好啊

kingcomxu | 园豆:4 (初学一级) | 2016-08-11 09:58
0

你是想要实现下面的效果么?

田麦成 | 园豆:1982 (小虾三级) | 2016-08-11 10:23

嗯 差不多是这种意思,我也解决了问题,我那个是在一个窗口多界面并存的情况下,然后由于后来new的窗体和之前指代的不一样,所以对它进行任何操作也没用,定义一个全局变量后就解决了。也谢谢你们的帮助 

支持(0) 反对(0) 一个单人旅途 | 园豆:53 (初学一级) | 2016-08-11 19:49
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册