限制.net文本框中的行数

我使用 winforms文本框与多行选项ON.我想限制可以输入的行数.用户不应该输入更多的行.

我该如何实现呢?

你需要检查

txtBox.Lines.Length

您需要处理以下两种情况:1.用户正在输入文本框2.用户已将文本粘贴到文本框中

用户在文本框中输入

您需要处理文本框的按键事件,以防止用户在超过最大行时输入更多行.

private const int MAX_LINES = 10;

private void textBox1_KeyPress(object sender,KeyPressEventArgs e)
{
    if (this.textBox1.Lines.Length >= MAX_LINES && e.KeyChar == '\r')
    {
        e.Handled = true;
    }
}

我已经测试了上面的代码.它按照需要工作.

用户粘贴文本框中的一些文本

为了防止用户粘贴超过最大行,您可以对文本更改的事件处理程序进行编码:

private void textBox1_TextChanged(object sender,EventArgs e)
{
    if (this.textBox1.Lines.Length > MAX_LINES)
    {
        this.textBox1.Undo();
        this.textBox1.ClearUndo();
        MessageBox.Show("Only " + MAX_LINES + " lines are allowed.");
    }
}

相关文章

(1)when you ping a computer from itsafe,the ping command should return the local IP address. (...
1、点击win菜单,点击设置图标 2、选择系统选项 3、选择应用与程序选项 4、拉到最下方,选择程序与功能...
目前一直直接往Windows 2008 R2 Server中复制文件(暂时还没有搭建ftp服务),突然不能复制了,于是百度...
windows下使用vscode配合xebug调试php脚本 要下载有php_xebug.dll扩展的版本,最新版可能没有这个扩展,p...
在控制面板的程序与功能里启用和关闭windows功能打开,适用于linux的windows子系统
效果演示 推荐一个非常牛的文档网站生成器:docsify 我通过这个工具,成功将码云上的个人学习笔记发布到...