C#中的屏幕层次结构
本文关键字:层次结构 屏幕 | 更新日期: 2023-09-27 18:21:56
我正在编写一个基于C#表单的应用程序,想知道屏幕层次结构是如何布局的,以及使用了哪些组件。
应用程序流非常像一个有一个主窗口的移动应用程序结构,您可以从中深入到不同的"屏幕堆栈"。
做这件事最好的方法是C#
我是使用不同的形式,还是使用基本屏幕,然后只更换面板?
我不会使用不同的形式或面板,因为这很可能会把代码变成一个巨大的、无形的泥球。
相反,您可以考虑使用UserControls并动态加载最合适的控件。这个解决方案只适用于少量的控件,但当有许多事件、复杂的逻辑和维护状态时,它就会失控,我认为它对小型项目之外的任何事情都没有那么有用。
2005年,Patterns&Practices小组实现了Composite UI应用程序块,这是改进动态加载的用户控件的第一次尝试。然而,在与Prisim一起发布.NET3之后,这在很大程度上被放弃了。2010年11月,Prisim 4.0发布,旨在成为RIA风格的架构。就我个人而言,我会选择Prisim的方法,因为这里有一个良好的社区,有微软的支持,为了克服你无疑会遇到的问题,这个项目付出了很多努力。
有许多不同的方法来实现所描述的UIX和工作流,每种方法都有自己的优势和劣势,当您接触到各种不同的开发场景时,这些优势和劣势就会变得越来越明显。
您可以使用新的窗体来公开UI控件和功能(这不是我的首选方法),还有各种选项可以创建最适合您的应用程序的自定义控件。
我倾向于为每个UI组件创建复合控件,并使用workflow Foundation处理工作流本身。
为了管理工作流,微软拥有Windows workflow Foundation,这是一个可扩展和灵活的框架,用于在代码中以解密和编程的方式实现逻辑流程。
使用.NET Framework开发自定义Windows窗体控件
演练:使用Visual C#编写复合控件