我想计算 VB 多行文本框显示整个给定字符串所需的行数。这样我就可以在 TextChanged 事件期间相应地增加文本框的高度。
问问题
12479 次
1 回答
3
有TextBox
一个Lines
属性。
int numLines = txt.Lines.Length
但这仅在 TextChanged 事件期间返回 1。
那么你只有一条线。行由Ènvironment.NewLine (VBCrlf) 分隔。您的文本看起来会有多行,但实际上它只是被换行了,因为它对于视图来说太长了。
尝试以TextChanged
这种方式设置高度:
Dim s As SizeF = TextRenderer.MeasureText(txt.Text, txt.Font, txt.ClientRectangle.Size, TextFormatFlags.WordBreak)
txt.Height = CInt(s.Height)
于 2012-11-15T20:45:32.910 回答