在 C# 中更改选项卡页时,如何将面板设置为始终位于顶部?

2024-03-11

我在 TabController 中有两个选项卡的程序,我还有一个我想始终放在前面的面板。不管我在哪个标签页。我尝试将面板设置为BringToFront(),但是当我更改标签页时这似乎不起作用。有什么建议如何解决这个问题吗?


如果面板是包含通过 TabPage,那么只要选项卡更改,您就必须手动将其切换到当前选项卡,然后调用 BringToFront()。

另一种方法是使面板直接包含在Form,但在 TabControl 前面(就像它“浮动”在它上面)。然后它就会留在那里。您必须手动调整面板的 Location() 属性才能使其正确(您无法将其拖动到 TabPage 上,因为这样它就会落入其中),或者您可以通过 Load( ) 表单的事件。

Edit:

例如,如果您将“panel1”正确放置在TabPage在设计时,您可以使用如下代码将其切换到表单:

    private void Form1_Load(object sender, EventArgs e)
    {
        Point pt = panel1.PointToScreen(new Point(0, 0));
        panel1.Parent = this;
        panel1.Location = this.PointToClient(pt);
        panel1.BringToFront();
    }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 C# 中更改选项卡页时,如何将面板设置为始终位于顶部? 的相关文章