【发布时间】:2012-04-11 15:07:01
【问题描述】:
我在 Windows 窗体中有 ListView 控件,这是由于在图标视图或详细信息视图中显示项目列表。我想分离 ListView 状态逻辑并创建 2 个状态类 IconsState 和 DetailsState 从 IState 继承它们,并从 UI 窗口调用所有方法。
在详细视图中有 RetrieveVirtualItem 事件,在图标视图中有 DrawItem 事件。为了从 UI 中存在的 IState 变量调用它们,两个州的后代类都必须实现它们。在 DetailsState 中拥有 DrawItem 只会返回。 IconsState 中的 RetrieveVirtualItem 也是如此。
是否有另一种设计方法可以避免在状态中实现空方法?
【问题讨论】:
标签: c# design-patterns user-interface