gpt4 book ai didi

c# - 如何将对象从 form1 传递到 form2 再返回到 form1?

转载 作者:太空狗 更新时间:2023-10-30 00:57:34 26 4
gpt4 key购买 nike

在决定问这个问题之前,我已经对这个问题做了一些研究。我就是找不到任何对我有帮助的东西。

我正在用 C# 为紧凑型框架 2.0 编写应用程序。

我需要获取在 form1 上实例化的数据对象并将该对象传递给 form2。处理 form2 中的数据对象,然后将该数据传回 form1 以便保存。

我明白表单只是一个对象,我也明白对象是通过引用而不是值来传递的。我也理解这两种类型之间的区别。我只是出于某种原因无法让它工作。

实现此目标的最佳、最简洁的代码方式是什么?

最佳答案

你需要做的是为你的第二个表单创建第二个构造函数,它接受一个对象作为参数......就我而言,它可以是整个 Form1 对象实例,然后你可以从中得到你想要的任何东西.以您的第二种形式保存此对象,并根据需要在那里进行修改。完成第二个表单后,您的第一个表单将拥有该数据,您可以在第二个表单关闭后执行任何“刷新”操作。

public partial class YourSecondForm : Form
{
object PreserveFromFirstForm;

public YourSecondForm()
{
... its default Constructor...
}

public YourSecondForm( object ParmFromFirstForm ) : this()
{
this.PreserveFromFirstForm = ParmFromFirstForm;
}

private void YourSecondFormMethodToManipulate()
{
// you would obviously have to type-cast the object as needed
// but could manipulate whatever you needed for the duration of the second form.
this.PreserveFromFirstForm.Whatever = "something";
}


}

关于c# - 如何将对象从 form1 传递到 form2 再返回到 form1?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4887820/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com