標籤文字包裝
回答
參照Automatically Wrap Text in Label。它描述瞭如何創建自己的成長標籤。
下面是從上述基準進行的完整來源:
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();
}
}
我想添加一個新的屬性到現有的標籤,像AutoSize,就像IsWordWrap = true。有什麼想法嗎?所以我可以給 LabelName。IsWordWrap = TRUE; – Sharpeye500 2012-03-01 01:22:38
在我的情況TextRenderer.MeasureText給出了錯誤的大小。爲了使所有東西都完美,你還需要重寫OnPaint並繪製如下的文本:'TextRenderer.DrawText(e.Graphics,this.Text,this.Font,new Rectangle(0,0,this.Width,Int32.MaxValue),ForeColor, TextFormatFlags.WordBreak);' – user1561713 2016-11-09 14:20:16
諷刺的是,將其設置爲false
關閉AutoSize
讓我獲得標籤控件的尺寸大小它既垂直和水平,有效地允許發生自動換行。
只需將Label AutoSize屬性設置爲False。然後文本將被包裹,您可以手動重新調整控件的大小以顯示文本。
如果你想要一些動態調整大小與字包裝標籤相結合,你可以做到以下幾點:
- 把標籤在面板內部
處理好
ClientSizeChanged event
的面板,使得 標籤填補空間:private void Panel2_ClientSizeChanged(object sender, EventArgs e) { label1.MaximumSize = new Size((sender as Control).ClientSize.Width - label1.Left, 10000); }
套裝
Auto-Size
的標籤true
- 設置
Dock
的標籤Fill
如果您打開Visual Studio中的Text
財產的下拉菜單中,你可以使用回車鍵分割線。這顯然只適用於靜態文本,除非您知道動態文本的最大尺寸。
謝謝!這正是我所尋找的(如何在設計師中分割線條)。 – ehambright 2016-02-25 18:59:26
堆更好的答案! – 2016-09-05 00:39:50
您可以使用TextBox
並將multiline
設置爲true
和canEdit
至false
。
multiline和canEdit不是TextBox上的實際屬性。 – 2016-09-21 15:17:34
- 1. 包裝文字標籤
- 2. P標籤文字包裝
- 3. TinyMCE中的標籤內包裝標籤
- 4. 罐子中的包裝標籤文件
- 5. Javascript包裝帶標籤bbcode的文本?
- 6. ASP.NET - Environment.NewLine包裝L1標籤
- 7. 在EXTJS中包裝標籤
- 8. 在Zend_Form_Element_Radio中包裝標籤
- 9. 包裝長軸標籤
- 10. PyGTK:動態標籤包裝
- 11. 包裝智者標籤
- 12. 數字標籤可以包含包裝圖像的錨標籤嗎?
- 13. 防止TinyMCE在Wordpress的p標籤中包裝文字
- 14. 獲取沒有標籤標籤包裝的國際化標籤文本
- 15. 包裝文字
- 16. 文字未包裹在標籤標籤中
- 17. 如何使用標籤包裝字符的字符串?
- 18. 在Wordpress中區分包裝圖像和包裝文本節點的P標籤的P標籤?
- 19. 在內聯菜單中的LI標籤中的A標籤中包裝文本
- 20. 如何更改ggplot小標籤(自定義小包裝標籤)
- 21. 如何在圖片標籤中包裝html標籤?
- 22. 如何在Beautifulsoup中的新標籤下包裝多個標籤?
- 23. 以zend形式包裝標籤
- 24. 如何在WebForms中包裝標籤
- 25. 成長TableViewCell高度與包裝標籤
- 26. Google Chart Chart包裝過濾器標籤
- 27. 標籤中的包裝清單
- 28. 抑制v-html包裝標籤
- 29. SWT - 在複合內包裝標籤
- 30. 用BeautifulSoup包裝多個標籤
我不認爲有,但自從我做了WinForms以來已經有一段時間了。 – 2012-03-01 00:58:37