【发布时间】:2009-05-26 20:05:40
【问题描述】:
假设您的控件 A、B、C、D 和 E 都具有 Visibility 属性。您还有状态 1、2、3、4、5 和 6,其中将显示您的控件的各种组合。
目前这是由每个状态的 switch 语句处理的:即
Select Case PageState
case "1"
a.visible = false
b.visible = true
c.visible = false
d.visible = true
e.visible = false
case "2"
a.visible = true
b.visible = true
c.visible = false
d.visible = true
e.visible = false
case ...
End Select
正如您可以想象的那样,这会变得很痛苦,因为每个状态都需要每个控件的显示/隐藏语句。我怎样才能重构它,以便添加控件和/或状态变得微不足道?
我的第一反应是扩展控件并添加应显示的状态集合,但这听起来有点矫枉过正。
编辑 我故意含糊其辞,以防这有其他含义。在我当前的实例中,有问题的“控件”是 ASP 面板。这有什么改变吗?
【问题讨论】:
标签: asp.net vb.net design-patterns