处理类对象的 GUI 的最佳(阅读:技术上最正确)方法是什么?
例如,假设我有一个类来处理 I/O。让我们称之为clsIO
。我还有一个表单允许用户更改此类的各种选项/属性,我们称之为frmIO
. frmIO
GUI 是特定于 的,clsIO
它不会在应用程序的其他任何地方使用。
我的应用程序将始终创建 的实例clsIO
,它将加载其默认设置并开始其操作。用户可能需要也可能不需要显示frmIO
“设置表单”以便他可以对其进行配置。
对我来说,处理这个问题的最好方法似乎是在类中存储对表单的对象引用,并提供一个ShowConfigForm()
方法,而不是实例化表单,然后实例化类。
这是声音设计吗?
编辑
我计划在多个项目中重用这个类/表单组合。我已经在自己的项目中开发了它,因此我可以轻松地将其转移/导入到可能需要它的其他项目中。
我当前设计的简单伪代码:
class clsIO
{
public bool Active{get;set;}
public int Port{get;set;}
public ShowConfigForm()
{
frmIO settings = new frmIO(this);
settings.Show();
}
}
class frmIO
{
private clsIO _IO;
public frmIO(clsIO IO){_IO = IO;};//constructor
private btnEnable_Click()
{
_IO.Active = true;
//etc etc
}
}
这里我只需要实例化clsIO
. 不是反过来。