我正在尝试在c#中创建一个只包含100个单词的文本框,在第100个单词之后,没有其他文本可以输入到框中。
答案 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个单词时可以恢复该变量。