控制WinForms TableLayoutPanel上控件的确切位置

时间:2016-09-13 12:59:30

标签: c# winforms tablelayoutpanel

我需要在主窗体后面使用网格状结构,因此使用TableLayoutPanel。现在,我需要将控件放在"确切位置"在这个小组上。我怎样才能做到这一点?我知道如何将控件放在单元格中,指定行和放大器。列#,但有没有办法管理像WPF网格中的rowspan,columnspan和margin?

还有一件事。我在另一个Panel中托管TableLayoutPanel,而第二个Panel基本上位于WPF项目中的WindowsFormsHost中。

这就是我的TableLayoutPanel现在的样子:

enter image description here

1 个答案:

答案 0 :(得分:0)

您可以将Panel添加到Cell,然后将Button添加到Panel个控件,并为top设置leftButton

Panel panel = new Panel();
Button button = new Button();

panel.Controls.Add(button);
panel.Dock = DockStyle.Fill;
button.Top = 5;
button.Left = 5;

tableLayoutPanel.Controls.Add(panel, 0,0);
tableLayoutPanel.SetColumnSpan(panel,2);
tableLayoutPanel.SetRowSpan(panel,2);