为了账号安全,请及时绑定邮箱和手机立即绑定

如何将对象从Form1传递到Form2,然后再传递回Form1?

如何将对象从Form1传递到Form2,然后再传递回Form1?

C#
翻翻过去那场雪 2019-10-22 22:08:55
在决定问这个问题之前,我已经对这个问题做了一些研究。我只是找不到任何可以帮助我的东西。我正在用C#编写紧凑框架2.0的应用程序。我需要获取在form1上实例化的数据对象,并将该对象传递给form2。在form2中处理数据对象,然后将该数据传递回form1,以便可以保存它。我了解表单只是一个对象,我也了解对象是通过引用而不是值来实现的。我也了解两种类型之间的区别。由于某种原因,我无法使其正常工作。什么是实现这一目标的最佳,最简洁的方法?
查看完整描述

3 回答

?
GCT1015

TA贡献1827条经验 获得超4个赞

我一直很喜欢为此的事件模型。这样,您的表单就无需了解其他任何人。您可以在两种形式使用的某种EventHandler类中设置如下所示的事件。


public delegate void SavingObjectHandler(MyObject obj);

public event SavingObjectHandler SavingObjectEvent;

public void SavingObject(MyObject obj)

{

   if (SavingObjectEvent != null) SavingObjectEvent(obj);

}

那么您的一种形式可以调用SavingObject偶数处理程序,而另一种形式可以订阅SavingObjectEvent。当第一个表单触发事件时,将通知第二个表单进行所需的处理,然后在操作之后该对象将再次可用于第一个表单。


查看完整回答
反对 回复 2019-10-22
  • 3 回答
  • 0 关注
  • 508 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信