如何限制要在文本框中粘贴的字符数?

Jac*_*ost 8 c# winforms

我需要限制要在多行文本框中粘贴的字符数.

假设这是我要在文本框中粘贴的字符串:

美好的一天女士们和男士们!
我只是想知道

如果可以的话,请帮忙.

规则是最大字符PER LINE是10,最大ROWS是2.应用规则,粘贴文本应该只是这样:

美好的一天,
我只是想

shf*_*301 5

没有自动做什么.您需要TextChanged在文本框中处理事件并手动解析更改的文本以将其限制为所需的格式.

private const int MaxCharsPerRow = 10;
private const int MaxLines = 2;

private void textBox1_TextChanged(object sender, EventArgs e) {
    string[] lines = textBox1.Lines;
    var newLines = new List<string>();
    for (int i = 0; i < lines.Length && i < MaxLines; i++) {
        newLines.Add(lines[i].Substring(0, Math.Min(lines[i].Length, MaxCharsPerRow)));
    }
    textBox1.Lines = newLines.ToArray();
}
Run Code Online (Sandbox Code Playgroud)