如何使控件在面板中可见

本文关键字:何使 控件 | 更新日期: 2023-09-27 18:12:50

我想在WinForms面板中添加一个控件。

public Form1()
{
       InitializeComponent();
       PictureBox a = new PictureBox();
       a.Left = 100;
       a.Top = 150;
       a.Width = 50;
       a.Height = 50; 
       a.BackColor = Color.Red;
       Controls.Add(a);    
}

如果没有Panel,这段代码可以完美地工作。但是Panel阻塞了PictureBox,我应该更改哪些属性?

如何使控件在面板中可见

基本上,有几个选项可以实现这一点:

1。当您像这样添加控件到Form时:

Controls.Add(panel);
Controls.Add(button1);
Controls.Add(button2);
Controls.Add(pictureBox);

它们将按以下顺序显示:panel在下面,buttons在中间,pictureBox在上面。

2。正如在注释中指出的那样,您可以在添加控件后使用BringToFront()

pictureBox.BringToFront();

这将使pictureBox在其他东西的顶部。

3。你可以通过编辑控件的Z-index(在WinForms中称为ChildIndex)来改变控件的顺序。你可以用:

Controls.SetChildIndex(pictureBox, __yourIndex__);

4。您可以使用以下命令将pictureBox添加到panel:

panel.Controls.Add(pictureBox);