1

我有两种形式,

  1. 一个主窗体,它有一个显示类型列表的网格视图AaaViewModel
  2. 单击主窗体中的一行后会弹出一个子窗体。它将显示在主窗体中单击的行中的一些数据和一个网格视图,其中包含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; }
}
4

0 回答 0