c# richtextbox 如何 删除最后一行
我通过循环给richtextbox加了text:str="";richTextBox1.Text+=str+'\n';结果就是最后一行是空白行,多了一个'\n',怎么样可...
我通过循环给richtextbox加了text:
str = "";
richTextBox1.Text += str + '\n';
结果就是最后一行是空白行, 多了一个'\n', 怎么样可以去掉这一行?
我的想法是richTextBox1.Text.Remove(richTextBox1.Text.Length - 1);最后一个字符是回车,我觉得这样可以,但实际没效果, 不知道为什么。 展开
str = "";
richTextBox1.Text += str + '\n';
结果就是最后一行是空白行, 多了一个'\n', 怎么样可以去掉这一行?
我的想法是richTextBox1.Text.Remove(richTextBox1.Text.Length - 1);最后一个字符是回车,我觉得这样可以,但实际没效果, 不知道为什么。 展开
5个回答
展开全部
C#
private delegate void delInfoList(string text);//申明委托,防止不同线程设置richtextbox时出现错误
void SetrichTextBox(string value)
{
if (RecRichTextBox.InvokeRequired)
{
delInfoList d = new delInfoList(SetrichTextBox);
RecRichTextBox.Invoke(d, value);
}
else
{
if (RecRichTextBox.Lines.Length >100)
{ RecRichTextBox.Clear(); }
//========richtextbox滚动条自动移至最后一条记录
//让文本框获取焦点
RecRichTextBox.Focus();
//设置光标的位置到文本尾
RecRichTextBox.Select(RecRichTextBox.TextLength, 0);
//滚动到控件光标处
RecRichTextBox.ScrollToCaret();
RecRichTextBox.AppendText(value);
}
}
private delegate void delInfoList(string text);//申明委托,防止不同线程设置richtextbox时出现错误
void SetrichTextBox(string value)
{
if (RecRichTextBox.InvokeRequired)
{
delInfoList d = new delInfoList(SetrichTextBox);
RecRichTextBox.Invoke(d, value);
}
else
{
if (RecRichTextBox.Lines.Length >100)
{ RecRichTextBox.Clear(); }
//========richtextbox滚动条自动移至最后一条记录
//让文本框获取焦点
RecRichTextBox.Focus();
//设置光标的位置到文本尾
RecRichTextBox.Select(RecRichTextBox.TextLength, 0);
//滚动到控件光标处
RecRichTextBox.ScrollToCaret();
RecRichTextBox.AppendText(value);
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int zuihouyihanghangshu = richTextBox2.Lines.Length - 1;
int start = richTextBox2.GetFirstCharIndexFromLine(zuihouyihanghangshu);//最后一行第一个字符的索引
int end = richTextBox2.GetFirstCharIndexFromLine(zuihouyihanghangshu) + richTextBox2.Lines[zuihouyihanghangshu].Length;//richtextbox最尾字符的索引
richTextBox2.Select(start, end);//选中最后一行
richTextBox2.SelectedText = "";//设置最后一行的内容为空
richTextBox2.Text = richTextBox2.Text.TrimEnd('\n');//删除换行符
int start = richTextBox2.GetFirstCharIndexFromLine(zuihouyihanghangshu);//最后一行第一个字符的索引
int end = richTextBox2.GetFirstCharIndexFromLine(zuihouyihanghangshu) + richTextBox2.Lines[zuihouyihanghangshu].Length;//richtextbox最尾字符的索引
richTextBox2.Select(start, end);//选中最后一行
richTextBox2.SelectedText = "";//设置最后一行的内容为空
richTextBox2.Text = richTextBox2.Text.TrimEnd('\n');//删除换行符
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你这个做最后一次的时候后面也就叫了一行空白richTextBox1.Text += str + '\n';
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用个IF 语句 判断一下不就行了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询