C# TreeView问题!

来源:百度知道 编辑:UC知道 时间:2024/05/29 01:31:51
我的TreeView把LabelEdit置为true;
想获取运行时treeView1.SelectedNode.Text更改后和更改前的值;
结果我就用treeView1_AfterLabelEdit事件,想法是获取更改后的值,但是发现很奇怪,treeView1.SelectedNode.Text的值还是更改前的,treeView1_AfterLabelEdit事件处理完后才变成更改后的,
比如:原来节点是: A,B,C
更改第2个变:A,D,C
在事件处理中是:A,B,C
处理完后是:A,D,C

那我怎么获取,什么事件下去获取那个D呢?

这是很正常的啊,本来AfterLabelEdit就是给你机会取消这次更改的。

我记得事件函数的参数里有个忘了是什么类型的e,e有一个成员就是标示更改后的文本,还有一个成员是更改前的文本,你自己逐个看看吧,反正不多。

你是不是页面的Page_Load()少写了
if (!Page.IsPostBack)
{}

少上面的.每次重载页面后都变回原来的了.

如果用单独的事件,好像没有,想不出好办法,有个思路,值后,有该有两种事件,1 当控件不再是窗体的活动控件时(leave事件),2选择下一个节点