【问题标题】:C#: how to insert string containing new lines into TextBox?C#:如何将包含新行的字符串插入 TextBox?
【发布时间】:2011-03-25 03:23:56
【问题描述】:

如何将包含新行的字符串插入到 TextBox 中?

当我使用\n 作为换行符时,它不起作用。

【问题讨论】:

    标签: c# textbox newline


    【解决方案1】:

    您必须将文本框的多行属性设置为true,您可以使用

    Environment.NewLine
    

    作为换行符。

    你也可以使用 \r\n 代替 Environment.NewLine

    TextBox1.Text = "First line\r\nSecond line"
    

    【讨论】:

      【解决方案2】:

      正如其他答案所说,您必须设置.Multiline = true,但我认为您随后必须使用Lines 属性。如果您已经将文本作为一个字符串,则可以照常将其分配给Text 属性。如果您的字符串包含 '\n' 作为分隔符,您可以替换当前系统的换行符:

      textBox1.Text = myString.Replace("\n", Environment.NewLine);
      

      【讨论】:

        【解决方案3】:

        第一种方法是:

        textbox1.Text = "First " + System.Environment.NewLine + " Second";
        

        第二种方法是:

        textbox1.Text = "First \r\n Second";
        

        【讨论】:

          【解决方案4】:

          首先,将 TextBox.Multiline 属性设置为 true。然后,您可以将 TextBox.Lines 属性分配给字符串数组。

          textbox.Lines = s.Split('\n');
          

          【讨论】:

            【解决方案5】:

            首先您需要将TextBox.Multiline 属性设置为true。

            然后你需要将文本放入文本框中,你有两种选择。

            • 将行设置为字符串数组:

              textbox.Lines = s.Split('\n');

            • 否则在设置文本时需要使用 windows 行尾(“\r\n”)而不是 unix/c 行尾(“n”)。如果你想让代码更清晰一点,可以使用Environment.NewLine 来完成。

              textBox1.Text = myString.Replace("\n", Environment.NewLine);

            如果您希望您的代码同时处理这两种类型的行尾,那么您可以在执行上述任一操作之前去掉“\r”。 蜇伤中的线终止符仍然比它们应该的痛苦大得多!

            【讨论】:

              猜你喜欢
              • 2010-09-14
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2013-05-29
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多