为什么tableLayoutPanel.Dock = DockStyle.Fill;不起作用,tableLayoutPanel不能填满Form中的所有可用空间
如何扩展button.Text = "Button";
namespace Scalability
{
static class Program
{
/// <summary>
/// Главная точка входа для приложения.
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
ViewForm viewForm = new ViewForm();
Application.Run(viewForm);
}
}
}
namespace Scalability.Forms
{
class ViewForm:Form
{
public ViewForm()
{
TableLayoutPanel tableLayoutPanel = new TableLayoutPanel();
Button button = new Button();
button.Text = "Button";
button.Dock = DockStyle.Fill;
Label label = new Label();
label.Text="Label";
label.Dock = DockStyle.Fill;
TextBox textBox = new TextBox();
textBox.Text = "textBox";
textBox.Dock = DockStyle.Fill;
tableLayoutPanel.Controls.Add(button, 0, 0);
tableLayoutPanel.Controls.Add(label, 0, 1);
tableLayoutPanel.Controls.Add(textBox, 1, 0);
tableLayoutPanel.Dock = DockStyle.Fill;
this.Controls.Add(tableLayoutPanel);
}
}
}发布于 2016-05-31 22:43:42
配置TableLayoutPanel的RowStyles,使其伸展
TableLayoutPanel tableLayoutPanel = new TableLayoutPanel();
tableLayoutPanel.RowStyles.Add(new RowStyle(SizeType.Percent, 50));
tableLayoutPanel.RowStyles.Add(new RowStyle(SizeType.Percent, 50));发布于 2016-05-31 23:20:25
但它确实起作用了。:)
1)尝试将颜色附加到控件,如下所示。
Button button = new Button();
button.Text = "Button";
button.BackColor = Color.Orange;
button.Dock = DockStyle.Fill;
Label label = new Label();
label.Text = "Label";
label.BackColor = Color.Yellow;
label.Dock = DockStyle.Fill;
TextBox textBox = new TextBox();
textBox.Text = "textBox";
textBox.BackColor = Color.Green;
textBox.Dock = DockStyle.Fill;现在,您将看到这些控件完全按照您放置的方式使用整个窗口。所以按钮是列0,行0(左,上)。文本框为第1列,第0行(右上角)。标签为第0列,第1行(左下)。并且在第一列第一行中没有任何内容(右下角的“中心位置”是空的)。
如果你将一个按钮添加到1,1,它将在剩余的空间中伸展。像这样
// Blue button.
Button bbutton = new Button();
bbutton.Text = "Button";
bbutton.BackColor = Color.Blue;
bbutton.Dock = DockStyle.Fill;
tableLayoutPanel.Controls.Add(button, 0, 0);
tableLayoutPanel.Controls.Add(label, 0, 1);
tableLayoutPanel.Controls.Add(textBox, 1, 0);
// We added this one.
tableLayoutPanel.Controls.Add(bbutton, 1, 1);
tableLayoutPanel.Dock = DockStyle.Fill;现在你就知道了。
https://stackoverflow.com/questions/37548609
复制相似问题