我正在尝试在 c# 中创建一个仅包含 100 个单词的文本框,并且在第 100 个单词之后,无法将其他文本输入到框中。
问问题
982 次
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 回答