如何管理winforms中的级联GUI更改?

时间:2011-03-18 17:02:15

标签: c# winforms events user-interface design-patterns

在我正在处理的应用程序中,GUI字段之间存在很多依赖关系。例如,当用户更改文本框中的值时,表单上的其他控件需要根据新值进行更改,而新值又可能会触发或不触发表单上的其他更改。这些关系可能会随意变得复杂,用户需求也会经常变化。

我知道有一些模式如MVC将业务逻辑分离到控制器中,但我认为我试图解决的问题是不同的,因为逻辑本身变得复杂。看起来关系可以被建模为有向图,每个GUI控件都是一个节点。我想知道这是否是接近它的正确方法,如果有任何框架在我尝试滚动之前。

1 个答案:

答案 0 :(得分:0)

我们使用“外观模型”让控制器更新该模型的状态,视图仅根据外观模型自行更新。

MyAppModel.MyControl.Readonly = true;

将绑定到视图上的控件readonly属性。

所以现在基于某些事件,我可以打开/关闭这些状态以更改视图。