我有两种形式,
- 一个主窗体,它有一个显示类型列表的网格视图
AaaViewModel
。 - 单击主窗体中的一行后会弹出一个子窗体。它将显示在主窗体中单击的行中的一些数据和一个网格视图,其中包含
BbbViewModel
与单击的行相关的类型列表。
如何保持主窗体的状态?应该是
interface IMainForm { IEnumerable<AaaViewModel> state; ....}
还是应该放在演示者类中?是否应该将另一个 ViewModel 定义IEnumerable<AaaViewModel>
为主表单?
BTW,应该如何定义子表单的ViewModel?AaaViewModel
它应该使用两个视图模型BbbViewModel
吗?还是应该合并。
class SubformViewModel
{
public AaaViewModel Main { get; set; }
public IEnumerable<BbbViewModel> Sub { get; set; }
}
或者如果我只需要主表单中的几个字段,我不需要在子表单中包含 AaaViewModel?
class SubformViewModel
{
public int Field1 { get; set; }
public string Field2 { get; set; }
public IEnumerable<BbbViewModel> Sub { get; set; }
}