C# 垂直测量弦

C# 垂直测量弦,c#,winforms,label,C#,Winforms,Label,我有一个C#Winform应用程序。在我的表格中,我有一个面板,在我的面板中,我有一个标签。标签是动态创建的。我有以下代码: Label label1 = new Label(); label1.MaximumSize = new Size(400, 0); label1.Location = new Point(posX, posY); label1.Text = myText; label1.AutoSize = true; posY += 15; 好的,一切正常。标签的文本在400像素后

我有一个C#Winform应用程序。在我的表格中,我有一个面板,在我的面板中,我有一个标签。标签是动态创建的。我有以下代码:

Label label1 = new Label();
label1.MaximumSize = new Size(400, 0);
label1.Location = new Point(posX, posY);
label1.Text = myText;
label1.AutoSize = true;
posY += 15;

好的,一切正常。标签的文本在400像素后自动换行。问题是,我需要创建第二个标签,但如何知道将位置设置为什么?此新标签需要放置在第一个标签的正下方,第一个标签可能有1行或5行长。任何帮助都将不胜感激。

尝试将标签放置在FlowLayoutPanel中,将流动方向设置为自上而下。

我支持,另一种解决方案是在设置label2的
顶部之前读取label1的
高度

例如:

label2.Top = label1.Top + label1.Height + 10;

带有一些行的GridLayout可能是一种解决方案,但在这里不要试图脱离主题,但这正是WPF擅长的事情。如果你有选择的话,我建议你考虑一下。同意,不幸的是,现在没有选择。哇,我要试试这个。我不知道为什么我没有想到这样一个简单的答案,哈哈