【发布时间】:2011-07-21 19:19:38
【问题描述】:
我正在寻找复杂 UI 逻辑实现的最佳实践。我正在开发一个 Windows 窗体应用程序,但我相信应该有通用模式来解决任何平台上的这个问题。
我的表单上有许多控件,包括列表、按钮、表格和树形视图。因此,想法是根据“上下文”启用某些控件,而禁用其他控件。其中一些可以暂时提供一些功能,而另一些则不能。
目前它是“按原样”实施的。我处理事件,检查更改(选择了新的树节点,选择了几个节点等),然后决定是否需要禁用或启用某些控件。我不太喜欢这种方法,因为表单代码看起来很复杂。如果我需要添加更多逻辑,它会变得更加复杂。我真的很担心,因为我们非常敏捷,新功能或大量更改是日常常态。
我正在考虑将所有这些逻辑分成多个部分(功能),其中每个功能都是一个知道如何检查其状态的对象,并根据此状态启用或禁用相关控件。
真的不想发明任何新东西并试图找到任何被广泛使用的好主意。请不要推荐单一的 UpdateUI() 方法,我相信从长远来看这不会改变任何事情。
谢谢。
【问题讨论】:
标签: c# .net winforms architecture user-interface