在文本框的最后一行输入文本,前面的行无法编辑,求助。
AI 发出这样的代码,但什么也没发生
private void srvBox_KeyPress(object sender, KeyPressEventArgs e)
{
if (srvBox.Text.Length > 0)
{isCursorAtLastLine = srvBox.SelectionStart == srvBox.Lines.Length - 1;}
else{isCursorAtLastLine = true;}
if (isCursorAtLastLine == true){e.Handled = false;}
else{e.Handled = true;}
}
我将该代码修改为以下内容,这似乎有效。
private void srvBox_KeyPress(object sender, KeyPressEventArgs e)
{
if (srvBox.Text.Length > 0 && srvBox.SelectionStart == srvBox.Text.Length)
{
e.Handled = false;
}
else
{
e.Handled = true;
}
}
但是,我怀疑(正如其他人所建议的那样),这不是最好的方法。