我正在编写一个基于C#表单的应用程序,并想知道如何布局屏幕层次结构以及使用哪些组件。
应用程序流程非常像具有一个主窗口的移动应用程序结构,您可以从中深入了解不同的“屏幕堆栈”。
这样做的最佳方法是C#?
我是否使用不同的表格或形成基本画面,然后只更换面板?
答案 0 :(得分:0)
我不会使用不同的形式或面板,因为它很可能会将代码变成一个无法控制的大泥球。
相反,你可以看看使用UserControls并动态加载最合适的。这个解决方案适用于少量控件,但是当有很多事件,复杂的逻辑和维护状态时会失控,我不认为它对小项目以外的任何东西都有用。
2005年的模式&实践组实现Composite UI Application Block作为改进动态加载的用户控件的第一次尝试。然而,在使用Prisim发布.NET 3之后,这基本上被放弃了。 2010年11月发布了Prisim 4.0,旨在成为RIA风格架构。我个人会采用Prisim的方法,因为有一个很好的社区,微软的支持和大量的努力已经进入项目,以克服你将无疑遇到的问题。
答案 1 :(得分:0)
如上所述,实现UIX和工作流程的方式有很多种,每种方法都有自己的优点和缺点,越多,您就会越多地接触到各种不同的开发方案。
您可以使用新表单来公开UI控件和功能(这不是我首选的方法),还有一个variety of options for creating Custom Controls很可能适合您的应用程序。
我的偏好是为每个UI组件创建复合控件,并使用WorkFlow Foundation处理工作流本身。
对于工作流的管理,Microsoft拥有Windows Workflow Foundation,这是一个可扩展且灵活的框架,用于在代码中以编程方式和编程方式实现逻辑流程。
Developing Custom Windows Forms Controls with the .NET Framework
Walkthrough: Authoring a Composite Control with Visual C#