如何在运行时调整窗体上的所有控件?

时间:2013-01-11 01:38:30

标签: c# .net winforms resize controls

我有一个Windows窗体,其中包含PictureBox控件的网格。我希望能够在运行时调整整个表单的大小,并让所有这些PictureBox控件按比例动态调整大小(缩放)以适应表单的新大小。我们的目标是避免必须制作单独的资源文件,这些资源文件基本上只使用相同的.cs文件,因为我想要不同的大小。

1 个答案:

答案 0 :(得分:3)

尝试使用TableLayoutPanel控件,以百分比模式显示所有行和列。

new Form {
    Controls = {
        new TableLayoutPanel {
            Dock = DockStyle.Fill,
            ColumnCount = 2,
            Controls = {
                new Button {Text = "0,0", Dock = DockStyle.Fill},
                new Button {Text = "1,0", Dock = DockStyle.Fill},
                new Button {Text = "0,1", Dock = DockStyle.Fill},
                new Button {Text = "1,1", Dock = DockStyle.Fill}
            },
            RowStyles = {
                new RowStyle(SizeType.Percent) {Height = 1},
                new RowStyle(SizeType.Percent) {Height = 1}
            },
            ColumnStyles = {
                new ColumnStyle(SizeType.Percent) {Width = 1},
                new ColumnStyle(SizeType.Percent) {Width = 1}
            }
        }
    }
}.ShowDialog();