fa *_*ild 178
改变你的最大尺寸,
label1.MaximumSize = new Size(100, 0);
Run Code Online (Sandbox Code Playgroud)
并将您的自动调整大小设置为true.
label1.AutoSize = true;
Run Code Online (Sandbox Code Playgroud)
而已!
min*_*dia 22
请参阅标签中的自动换行文本.它描述了如何创建自己的成长标签.
以下是从上述参考资料中获取的完整资料来源:
using System;
using System.Text;
using System.Drawing;
using System.Windows.Forms;
public class GrowLabel : Label {
private bool mGrowing;
public GrowLabel() {
this.AutoSize = false;
}
private void resizeLabel() {
if (mGrowing) return;
try {
mGrowing = true;
Size sz = new Size(this.Width, Int32.MaxValue);
sz = TextRenderer.MeasureText(this.Text, this.Font, sz, TextFormatFlags.WordBreak);
this.Height = sz.Height;
}
finally {
mGrowing = false;
}
}
protected override void OnTextChanged(EventArgs e) {
base.OnTextChanged(e);
resizeLabel();
}
protected override void OnFontChanged(EventArgs e) {
base.OnFontChanged(e);
resizeLabel();
}
protected override void OnSizeChanged(EventArgs e) {
base.OnSizeChanged(e);
resizeLabel();
}
}
Run Code Online (Sandbox Code Playgroud)
如果您想要一些动态大小调整与自动换行标签一起使用,您可以执行以下操作:
处理ClientSizeChanged event面板,使标签填满空间:
private void Panel2_ClientSizeChanged(object sender, EventArgs e)
{
label1.MaximumSize = new Size((sender as Control).ClientSize.Width - label1.Left, 10000);
}
Run Code Online (Sandbox Code Playgroud)设置Auto-Size为标签true
Dock为标签Fill| 归档时间: |
|
| 查看次数: |
169987 次 |
| 最近记录: |