0

在此处输入图像描述

问题,正如您在图片中看到的那样。如果我在面板中填写这样的代码:

private void Form1_Load(object sender, EventArgs e)
{
    Panel pnl = new Panel();
    PictureBox pb = new PictureBox();
    TextBox txt = new TextBox();

    pnl.BorderStyle = BorderStyle.FixedSingle;
    pb.BorderStyle = BorderStyle.FixedSingle;
    pb.Dock = DockStyle.Top;
    txt.Dock = DockStyle.Fill;

    pnl.Controls.Add(pb);
    pnl.Controls.Add(txt);
    this.Controls.Add(pnl);
}

文本框仍然在面板内的 0,0 位置

4

1 回答 1

1

您必须首先使用 DockStyle.Fill 添加控件。

这也可以在代码中通过使用 Controls.SetChildIndex 方法并使用 DockStyle.Fill 将控件的 ChildIndex 设置为与其他控件一样小的数字来完成。

在 Visual Studio 的文档大纲视图中,您可以对设置 x.Designer.cs 文件中的 ChildIndex 的控件进行上下排序。

于 2013-07-10T13:11:18.087 回答