当前位置:编程学习 > C#/ASP.NET >>

TreeView控件中的添加、删除节点事件?

我需要在TreeView控件中节点的Add(),Remove()方法发生之后添加方法,请问如何实现? TreeView 控件 事件 --------------------编程问答-------------------- 没懂什么意思 是Add()或Remove()完成后再去执行别的操作? --------------------编程问答--------------------
引用 1 楼 ducker3590 的回复:
没懂什么意思 是Add()或Remove()完成后再去执行别的操作?


对,假设有代码A,现在需要在TreeView中节点的Add和Rmove方法执行之后执行代码A,请问有什么办法吗?
重写TreeView控件中的Add方法也可以,可是Add方法在Node中,我不知该如何重写额。 --------------------编程问答--------------------
引用 2 楼 wzj_710 的回复:
Quote: 引用 1 楼 ducker3590 的回复:

没懂什么意思 是Add()或Remove()完成后再去执行别的操作?


对,假设有代码A,现在需要在TreeView中节点的Add和Rmove方法执行之后执行代码A,请问有什么办法吗?
重写TreeView控件中的Add方法也可以,可是Add方法在Node中,我不知该如何重写额。


没听明白。如果你想要Add()之后执行方法,跟在后面不就好了么? --------------------编程问答--------------------
引用 楼主 wzj_710 的回复:
我需要在TreeView控件中节点的Add(),Remove()方法发生之后添加方法,请问如何实现?


按你所说的应该去找事件 --------------------编程问答--------------------
引用 4 楼 nice_fish 的回复:
Quote: 引用 楼主 wzj_710 的回复:

我需要在TreeView控件中节点的Add(),Remove()方法发生之后添加方法,请问如何实现?


按你所说的应该去找事件


但是TreeView控件里不提供这种事件啊……
求帮助,求解决。
对Add方法重写或者加一个“添加节点”事件都是可以的,问题是我都不会额。 --------------------编程问答-------------------- void afterAdd()
{
   TreeView tv = new TreeView();
   tv.nodes.add();//add()方法
    //TODO:添加你要的方法
    //TODO:ADD YourMethods
   ...
}
Remove()方法一样的

--------------------编程问答-------------------- 事件叠加就可以了吧,event+=eventhandler --------------------编程问答--------------------
引用 6 楼 mansheng 的回复:
void afterAdd()
{
   TreeView tv = new TreeView();
   tv.nodes.add();//add()方法
    //TODO:添加你要的方法
    //TODO:ADD YourMethods
   ...
}
Remove()方法一样的


这样做的话就等于是写了一个新的方法,假设有其他人在项目中调用了Add方法,照样无法触发我写的方法的。我需要的是一个Add方法执行后就能连带执行我的方法的解决方案,谢谢了。 --------------------编程问答--------------------
引用 7 楼 zhanwengong 的回复:
事件叠加就可以了吧,event+=eventhandler


您好,能说详细些吗?
例如,在每次的Add方法执行之后都弹出一个MessageBox? --------------------编程问答--------------------
引用 8 楼 wzj_710 的回复:
Quote: 引用 6 楼 mansheng 的回复:

void afterAdd()
{
   TreeView tv = new TreeView();
   tv.nodes.add();//add()方法
    //TODO:添加你要的方法
    //TODO:ADD YourMethods
   ...
}
Remove()方法一样的


这样做的话就等于是写了一个新的方法,假设有其他人在项目中调用了Add方法,照样无法触发我写的方法的。我需要的是一个Add方法执行后就能连带执行我的方法的解决方案,谢谢了。



那看来你只能重写这个treeview了,重写后添加自己的afteradd()方法事件,你要自定义ITreeview控件了,这样,不然你就要用接口,写一个专门的接口有add方法,再定义一个事件,这个事件是eventafteradd后的,继承这个接口,事件里面执行你指定的一个方法这样别人用到这个treeview的时候继承了这个接口就不得不实现它,你再仔细想想,我觉得应该会找到思路的 --------------------编程问答--------------------
引用 10 楼 mansheng 的回复:
Quote: 引用 8 楼 wzj_710 的回复:

Quote: 引用 6 楼 mansheng 的回复:

void afterAdd()
{
   TreeView tv = new TreeView();
   tv.nodes.add();//add()方法
    //TODO:添加你要的方法
    //TODO:ADD YourMethods
   ...
}
Remove()方法一样的


这样做的话就等于是写了一个新的方法,假设有其他人在项目中调用了Add方法,照样无法触发我写的方法的。我需要的是一个Add方法执行后就能连带执行我的方法的解决方案,谢谢了。



那看来你只能重写这个treeview了,重写后添加自己的afteradd()方法事件,你要自定义ITreeview控件了,这样,不然你就要用接口,写一个专门的接口有add方法,再定义一个事件,这个事件是eventafteradd后的,继承这个接口,事件里面执行你指定的一个方法这样别人用到这个treeview的时候继承了这个接口就不得不实现它,你再仔细想想,我觉得应该会找到思路的


能不能重写treeView后,对Add方法进行修改? --------------------编程问答-------------------- Add方法是集合的add你怎么改啊 --------------------编程问答--------------------
引用 12 楼 jqncc 的回复:
Add方法是集合的add你怎么改啊


嗯,那还有什么其他的方法吗?
简单讲只要能够实现:在Add方法发生之后弹出一个MessageBox就可以了,求助啊。。。
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,