作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
在决定问这个问题之前,我已经对这个问题做了一些研究。我就是找不到任何对我有帮助的东西。
我正在用 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/
我是一名优秀的程序员,十分优秀!