C# 更改“可见”会破坏停靠面板的顺序

本文关键字:停靠 顺序 更改 可见 | 更新日期: 2023-09-27 18:30:26

我对接有问题。事情是这样的。我希望我能很好地解释它。

表单的设计是这样的

The form
   panelA -docked on top (there is a groupbox in this, it is also docked on top)
   panelB -docked on top
   tablist -docked fill

问题是,面板B需要在中间。面板 B 的可见性由面板 A 中的组合框控制。因此,当用户在组合框(在面板 A 中)中选择任何内容时,面板 B 是可见的,并加载了关联的用户控件。

文档大纲是

The form
  tablist
  panelB
  panelA

它们与设计处于同一水平,但顺序不同。我不知道为什么。

问题是,我在构造函数中使panelB可见=false,并在combobox_selectedIndexChanged中使其再次可见。但面板 B 似乎位于面板 A 的顶部。使其可见后,这就是它的外观;

the form
  panelB
  panelA
  tablist

我该如何解决这个问题?

C# 更改“可见”会破坏停靠面板的顺序

在使 panelB 对true可见后尝试以下序列:

panelA.BringToFront();
panelB.SendToBack();