0

我正在尝试在 c# 中创建一个仅包含 100 个单词的文本框,并且在第 100 个单词之后,无法将其他文本输入到框中。

4

2 回答 2

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;
}
于 2013-05-09T22:30:51.053 回答
0

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

于 2013-05-09T22:25:04.890 回答