我已经多次看到这个问题,但答案总是关于使用面板而已。假设我有一个包含25个不同“页面”内容的应用程序。我当然可以通过面板管理所有这些,但是这样设计的最佳方式是什么?您无法将25个面板内容完全适合Visual Studio设计器。是否有一些我盲目不知道的功能可以更容易地管理几十个面板?
答案 0 :(得分:2)
您错过了90%的时间给出的实际建议:使用UserControls
!
它们就像表单,但您可以将它们添加到表单中。请参阅here for a discussion和here以及here了解更多有关为何以及如何执行此操作的信息,以及accessor routines ...
的详细信息或者查看here和here以获取替代方案。它使用TabControl
但仅适用于开发人员;在运行时,TabControl
被隐藏,选定的内容容器(可能是Panel)从其TabPage移动到foom上的另一个容器或直接移动到表单。
UserControls
对可访问性构成挑战,因为默认情况下其成员控件为private
。但您可以将设计器中的modifiers
更改为public
或编写访问器功能。 Tab-trick通过在表单类中包含所有内容来避免这种情况;这样更简单但结构更差,不适合重复使用..