问题描述
因为RichTextBox会将输入的回车换行,也就是我们所说的rn中的r给去掉,所以最后得到的结果和输入的是不一样的。而TextBox是不会出这种问题的。但是我又要实现高亮效果,所以要能基于TextBox做高亮功能。有人说可以用RichTextBox得到结果后,可以将n替换成rn,但是如果我们自己给文本框赋值n的话,不就错了。所以要即可以程序赋值,又要能用户在界面上输入。有朋友对这一块熟悉的吗?在某猪网上发了个任务,有个号称能做的供应商让他做,说了半天,连什么是回车换行都搞不懂,不知道他的以前任务是怎么做的。经这位奇葩供应商同意,上传一下聊天记录,请大家也评个理。当然,我首先要道个歉,我有骂人了,不过这真是被逼的。最后鉴于某猪网工作效率奇下(QQ处理问题从早上排除到中午了,电话也等不到),就没去投诉了。大家看看,送分送完为止。有能解决这个问题的,也请留言,谢谢。
解决方案
解决方案二:
记录懒得看了,主要还是说功能,楼主想要的功能还不如做成,当焦点在RichTextBox上时,截取回车,然后在RichTextBox上自己拼个/n也好/r/n也罢
解决方案三:
引用1楼xdashewan的回复:
记录懒得看了,主要还是说功能,楼主想要的功能还不如做成,当焦点在RichTextBox上时,截取回车,然后在RichTextBox上自己拼个/n也好/r/n也罢
你这回车和换行能写成/n/r/n,我也是醉了。
解决方案四:
解决方案五:
引用2楼winslow的回复:
你这回车和换行能写成/n/r/n,我也是醉了。
哦,的确没注意,随手一输,都没仔细看,结果闹笑话了
解决方案六:
解决方案七:
我就看看
解决方案八:
看了记录,感觉很搞笑,对方好像不太明白需求啊
解决方案九:
解决方案十:
点击textbox文本框时,做以下设置即可textBox.SelectionStart=0;textBox.SelectionLength=this.textBox1.Text.Length;textBox.Focus();
解决方案十一:
richTextBox把Enter、Shift+Enter、Ctrl+Enter均解释为新行(newline)程序中用n表示你如果需要加上回车(r)的话,可将"n"替换成“rn”你的“如果我们自己给文本框赋值n的话,不就错了”这个担心是不存在的因为"n"这个字符就是换行到哪里都一样,注意:他不是字符和n字符组合,而是n字符挪作他用时加了转义符你在和鱼的对话中就存在这个问题,在你的误导下,他一再的演示和n是如何n演化出来的。这当然是不会然你满意的
解决方案十二:
这么长的帖子懒得逐个字看,拿5分走人
解决方案十三:
好像挺有意思
解决方案十四:
懒得看