【问题标题】:Panels in same area in winformwinform中同一区域的面板
【发布时间】:2014-01-05 16:04:43
【问题描述】:

我目前有一个 Windows 窗体,用作许多面板的“支架”。所有这些面板都像页面一样使用,所以假设我有一个默认面板、一个详细信息面板等。它们都覆盖了完全相同的区域,我正在使用顶部菜单来设置按钮来显示/隐藏正确的面板。

我遇到的问题是我无法选择一个面板并对其进行编辑,或者只是将其放在前面以“设计”模式进行编辑,我目前必须继续将顶部面板发送到后面,直到我得到我需要的那个。现在可以了,但最终我的程序将有超过 20 个面板类型的页面,这将变得乏味。

有没有更好的方法来管理这个,或者有没有比使用面板更简单的方法?

【问题讨论】:

标签: c# winforms


【解决方案1】:

所有这些面板都像页面一样使用
您问题中的上一行表明您应该使用TabPage 而不是面板。
因此,您可以使用TabControl,并在设计时和运行时轻松地将TabPage 添加到其中,并将您选择的控件添加到不同的TabPage(s)。
根据维基百科:-
选项卡允许在单个窗口中包含多个文档,使用选项卡作为导航小部件在文档集之间切换。这基本上就是您想要做的。
如图所示

然后您可以使用Button 切换不同的黑白TabPage 或显示/隐藏TabPage
它不仅可以解决您在设计时的设计问题,还可以提供“干净”的用户界面。希望对您有所帮助!

检查这个:- http://en.wikipedia.org/wiki/Tab_(GUI)

【讨论】:

    【解决方案2】:

    请改用TabControl。它还允许您在设计时切换活动面板。

    【讨论】:

      【解决方案3】:

      如果您想保留面板方法,有一种方法可以解决一个面板成为另一个面板的元素的问题。将面板拖到另一个面板的边界之外(使其不再是另一个面板的元素),然后使用键盘上的箭头键重新定位(即不是 使用鼠标将其拖动到另一个面板上的位置)。如果使用鼠标将面板拖动到另一个面板顶部的位置,该面板似乎只会成为另一个面板的元素。

      【讨论】:

        猜你喜欢
        • 2016-09-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-11-12
        • 2013-11-18
        • 2013-01-16
        • 2012-10-29
        相关资源
        最近更新 更多