限制文本框中的单词

时间:2013-05-09 22:22:10

标签: c# html textbox

我正在尝试在c#中创建一个只包含100个单词的文本框,在第100个单词之后,没有其他文本可以输入到框中。

2 个答案:

答案 0 :(得分:2)

一种简单的方法可能不准确,因为它用一个替换连续的空格:

private void textBox1_TextChanged(object sender, EventArgs e)
{
    string[] words = textBox1.Text.Split();
    int wordCount = words.Length;
    if (wordCount > 100)
        textBox1.Text = string.Join(" ", words.Take(100));
}

代替String.Join,您可以将其替换为旧文本:

private string oldText;
private void textBox1_TextChanged(object sender, EventArgs e)
{
    string[] words = textBox1.Text.Split();
    int wordCount = words.Length;
    if (wordCount > 100)
        textBox1.Text = oldText;
    else
        oldText = textBox1.Text;
}

答案 1 :(得分:0)

在文本框的TextChanged事件中,计算空格和换行符的出现次数。如果它们大于99,则不允许更改文本。您必须在另一个变量中保留其文本的副本,以便在用户输入第101个单词时可以恢复该变量。