当我们输入richtextbox时,如果单词没有完成但行已经完成,那么整个单词将转到下一行。所以有人可以告诉我如何为特殊字符执行此操作。通常会发生在空格中字符,但我想为另一个角色(Ascii one)。
答案 0 :(得分:1)
如果按下您选择的换行符,请检查KeyPress事件:
private void richTextBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == '-')
{
int curserPosition = richTextBox1.SelectionStart;
richTextBox1.Text += "-\r\n";
richTextBox1.SelectionStart = curserPosition + 2;
e.Handled = true;
}
}
如果将字符串粘贴到RichTextBox中,则需要解析字符串并将字符替换为字符加回车符和换行符:
string rtbText = string.Empty;
rtbText.Replace("-", "-\r\n");
如果你想在当前行已满时断开,你将不得不在以下方面添加更多逻辑:
if (richTextBox1.Lines[richTextBox1.Lines.Length - 1].Length > 100)
{
// parse the string for the last occurance of "-" and insert a CRLF behind it
}