在将文本分配给字符串变量后,如何在Winforms中保留TextBox换行符?

时间:2011-10-03 15:27:33

标签: vb.net winforms richtextbox

我有一个带有多行文本框的WinForms应用程序。这将显示并保留(从DB加载后)换行符。

但是,如果我将TextBox.Text值分配给字符串变量,然后将该变量重新分配回TextBox.Text属性,则换行字符将丢失并替换为方形字符(此处不能超过它们)因为他们只是粘贴为换行符!)

我试过了:

Replace("\n",vbcrlf)

但无济于事。

有人可以建议解决方案吗?

UPDATE **

我还没有设法解决这个问题,但通过避免变量赋值解决了这个问题。我现在传递对RichTextBox的引用并直接操作那里的文本。请注意,这似乎特定于RichTextBox,因为我没有看到普通TextBox的问题。

4 个答案:

答案 0 :(得分:1)

取代Replace(“\ n”'vbcrlf),您需要使用Replace(vblf,vbcrlf)或Replace(vbcr,vbcrlf)。

答案 1 :(得分:0)

只是一个想法: 如何修复“\ r \ n”而不是“\ n”?

答案 2 :(得分:0)

你是在改变字符串吗?因为这样的事情:

    Dim s As String = TextBox1.Text
    TextBox1.Text = s

效果很好。

答案 3 :(得分:0)

textBox.AppendText("your new text" & Environment.NewLine)