状态设计模式用户界面
本文关键字:用户界面 设计模式 状态 | 更新日期: 2023-09-27 17:58:10
我正在学习状态设计模式。我使用的是C#ASP.Net(不确定该语言是否相关)。
基本上,我的对象有状态A、B和C,还有在不同状态之间移动它的操作:ActionAToB
、ActionBtoA
和ActionAtoC
。
我想做的是将这个对象绑定到屏幕上,并让按钮触发这些操作,但问题是:如何只显示与该对象所处状态相关的按钮,并在状态更改时显示/隐藏按钮?
我正在寻找一个符合状态模式的优雅解决方案,或者任何可以使UI易于维护的建议。
使用观察者模式和状态模式。让你的Form类(或者你在UI中使用的任何东西)成为一个观察者,观察你的A-B-C对象。当这些对象更改状态时,它们将通知视图,她将相应地更新自己,隐藏相应的按钮。我写了关于这个的博客,见这里:Programate Algo博客
如果你看到一些西班牙语,不要害怕,我和我的博客都是双语的:)
编辑:如果你想让你的用户界面更容易维护,你还应该研究一种分离视图和模型的模式。有很多,有些是MVC、MVP和MVMM。