加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

限制.net文本框中的行数

发布时间:2020-12-13 20:14:51 所属栏目:Windows 来源:网络整理
导读:我使用 winforms文本框与多行选项ON.我想限制可以输入的行数.用户不应该输入更多的行. 我该如何实现呢? 你需要检查 txtbox.Lines.Length 您需要处理以下两种情况:1.用户正在输入文本框2.用户已将文本粘贴到文本框中 用户在文本框中输入 您需要处理文本框的
我使用 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.");
    }
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读