text文本框在运行时如何根据输入文字行数的多少动态改变其Height属性
我做一个小程序,需要在运行时向text文本框里输入文字,但无论输多少文字,文本框的高度还是设计时的大小,能不能随着输入文字行数的变化动态的改变其高度呢?就像label标签中的Autosize属性那样,请各位大师给小弟支个招吧,万分感谢!
[解决办法]
如果对于少量的字体,要计算高度,可以用API函数的 DrawText 取得文本在指定设备中的宽高。
只要你把设备中的字体样式、字体大小、字间距、行距设置成你的TextBox的配置相同,然后再用
DrawText来取得宽高就可以了,如果你不清楚GDI是如何创建和设置这种图形设备,你可以用一个
PixtureBox 控件或直接用窗体来取代这个设备,只要设置窗体或PixtureBox 控件的字体样式
与TextBox相同,然后就可以用DrawText在窗体或PixtureBox 控件的设备上取这些信息了,至于
DrawText的用法,百度一下“DrawText”就会有非常详细的解释