c# – 多行文本框根据文本量自动调整高度
发布时间:2020-12-15 08:06:24 所属栏目:百科 来源:网络整理
导读:我有一个文本框,可以返回各种字符串,长度从5个字符到1000个字符不等. 它具有以下属性: multiline = true wordwrap = true 我需要设置哪些文本框的其他属性才能使以下内容成为可能? 盒子的宽度应该是固定的 根据文本返回的大小自动调整框的高度,例如,如果文
我有一个文本框,可以返回各种字符串,长度从5个字符到1000个字符不等.
它具有以下属性: > multiline = true 我需要设置哪些文本框的其他属性才能使以下内容成为可能? >盒子的宽度应该是固定的 解决方法
请尝试以下代码:
public partial class Form1 : Form { private const int EM_GETLINECOUNT = 0xba; [DllImport("user32",EntryPoint = "SendMessageA",CharSet = CharSet.Ansi,SetLastError = true,ExactSpelling = true)] private static extern int SendMessage(int hwnd,int wMsg,int wParam,int lParam); public Form1() { InitializeComponent(); } private void textBox1_TextChanged(object sender,EventArgs e) { var numberOfLines = SendMessage(textBox1.Handle.ToInt32(),EM_GETLINECOUNT,0); this.textBox1.Height = (textBox1.Font.Height + 2) * numberOfLines; } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |