我有一堂课
Controller_data
,里面有一些列表和字典。我有一个主程序,它调用两个 Forms
来填充数据的各个部分,然后进行一些其他处理。
我的问题是:传递和收集这些数据的最佳方式是什么?
由于
Forms
本身就是类,我不太确定如何做到这一点。我是 C# 新手,有点困惑。
我想我可以将
Controller_data
设为静态并从任何地方访问它(对我来说这感觉有点像全局变量),在主程序中创建一个变量 Controller_data cd
并将指向它的指针传递给表单(不过,这看起来更像是 C 语言),或者在表单中制作 cd
的本地副本,填写它们,然后通过公共方法返回它们。
我真的不确定这样做的预期方法是什么。我更倾向于第一个解决方案。是这样吗,还是有其他我公然失踪的方式?该解决方案有什么缺点吗?
谢谢你
对于其他类,可以使用构造函数参数将数据传递到表单中。对于表单,您还必须注意在构造函数中调用
InitializeComponent
。这是配置表单并添加您在表单设计器中定义的所有控件的方法。
public class MyForm : Form
{
private readonly Controller_data _data;
public Myform(Controller_data data)
{
InitializeComponent();
_data = data;
}
...
}