我在 Windows 窗体中有 ListView 控件,这是由于在图标视图或详细信息视图中显示项目列表。我想分离 ListView 状态逻辑并创建 2 个状态类 IconsState 和 DetailsState 从 IState 继承它们,并从 UI 窗口调用所有方法。
在详细视图中有 RetrieveVirtualItem 事件,在图标视图中有 DrawItem 事件。为了从 UI 中存在的 IState 变量调用它们,两个州的后代类都必须实现它们。在 DetailsState 中拥有 DrawItem 只会返回。IconsState 中的 RetrieveVirtualItem 也是如此。
是否有另一种设计方法可以避免在状态中实现空方法?