C#中获取treeview选中的子节点的值,点击确定按钮将值传递给另一窗体的文本框中 5

 我来答
heningxuepiao
2013-01-06
知道答主
回答量:17
采纳率:0%
帮助的人:12.8万
展开全部
在treeview所属窗体的类型定义中增加一个事件/委托的定义, 在treeview的节点单击事件中,触发/调用该事件/委托,而在目标窗体类型的构造方法中,注册treeview所属窗体的该事件/委托的处理方法,方法内容将事件数据(包含子节点的相关数据)给它的文本框就ok了。如果不想要treeview所属窗体的引用,使用静态事件/委托也ok的
追问
第一个窗体中form1
publicvoid GreetPeople(string name) {
// 做某些额外的事情,比如初始化之类,此处略
txtbox1.text=name;
}第二个窗体中我是string str=treeview1.SelectedNode.text;获取节点值
form1 f=new form1();
f.GreetPeople(str);
开始我是这样做的,但是出错
追答
namespace CSharp.Chapter14
{
///
/// 表示将处理功能信息提交相关的事件
///
public delegate void FunctionCommitEventHandler();
}
如果你折腾过抽象方法abstract,那你把方法签名中的关键字abstract换成委托关键字delegate,就成了委托定义,委托就是封装方法的,所以跟方法保持一致的签名。

如果你折腾过字段,在字段的"类型"前加一个event关键字,就是事件的定义了,只是这个"类型"必须是一个委托类型。事件处理方法的签名必须与事件定义的委托类型的签名保持一致,就这么简单。在类型内部,事件可以直接像调用方法一样使用,或用执行委托一样的方式调用;在类型外部,事件通过+=和-=完成事件处理方法的注册和注销。
[DisplayName("FunctionCommitCompleted")]
[Description("在功能提交完成后发生")]
public event FunctionCommitEventHandler FunctionCommitCompleted;
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
一米阳光Grace
2013-01-06 · TA获得超过298个赞
知道答主
回答量:93
采纳率:0%
帮助的人:62.8万
展开全部
在另一个窗体中定义一个接收它的属性,在改窗体中实例另一个窗体的时候,实例名点出来定义的属性,将选中的节点赋值就过去嘞
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
老鸟是什么
2013-01-06 · TA获得超过117个赞
知道答主
回答量:180
采纳率:0%
帮助的人:69.1万
展开全部
用委托,多窗体多控件之间的值的传递可以通过委托进行。安全无后顾之忧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
农村人纵论杂谈
2013-01-06
知道答主
回答量:53
采纳率:0%
帮助的人:18.8万
展开全部
获取信息,用委托传到另一窗体
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
dyzeke
2013-01-06 · TA获得超过208个赞
知道小有建树答主
回答量:676
采纳率:60%
帮助的人:318万
展开全部
将另一个窗体的文本框设置为public
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式