Подтвердить что ты не робот

С# - Проблемы с новой текстовой областью

У меня есть текстовое поле, и я пытаюсь распечатать его со следующей строкой кода:

logfiletextbox.Text = logfiletextbox.Text + "\n\n\n\n\n" + o + " copied to " + folderlabel2.Text;

Если folderlabel 2, очевидно, является текстовым полем. Первое, что я вложил, - это одно и то же текстовое поле, чтобы текст не стирался. Излишние новые строки доказали мою проблему, потому что в текстовом поле нет новых строк (да, задано многострочным). "O" имеет тип FileInfo в массиве FileInfo.

Почему эти строки новой строки не отображаются в текстовом поле?

4b9b3361

Ответ 1

Используйте "\ r\n" вместо "\n". Текстовым полям Windows требуется CRLF в качестве ограничителей строк, а не только LF.

Потенциально вы могли бы использовать Environment.NewLine вместо этого, но я не знаю, что Mono TextBoxes делает с точки зрения работы с "\n" (это то, что Environment.NewLine будет в ящике Linux). Если он начнет добавлять лишние вещи в конце, если вы используете "\ r\n" , то это сломает множество существующих приложений, но если это потребует "\ r\n" , это приведет к разорению приложений, которые используют Environment.NewLine.

Environment.NewLine означает новую линию по умолчанию для всей платформы, на которой вы работаете, но что, если вы используете набор инструментов виджета, который делает одно, но текстовые файлы обычно делают что-то еще? Честно говоря, это немного беспорядок. Было бы неплохо, если бы существовало отдельное свойство TextBox.NewLine, которое могли бы обрабатывать различные реализации.

Ответ 2

Я считаю, что TextBoxes хочет Environment.NewLine (который должен быть "\ r\n" )

Обратите внимание, что это должен быть возврат каретки (\ r), за которым следует новая строка (\n). Если вы измените порядок, это не сработает.

Ответ 3

Элемент управления TextBox ожидает возврата каретки перед вашими линиями (0x0D 0x0A). Используйте "\r\n" или System.Environment.Newline.

Ответ 4

вместо использования \n мы можем использовать

Environment.NewLine

Я надеюсь, что это поможет

Ответ 5

Вот как я создал append и новую строку для отображения txtitems.Text = txtitems.Text + Environment.NewLine + dr [0].ToString() + "" + dr [1].ToString();

Ответ 6

Любой, кто использует VB.net, находится в поиске vbCr

Вот пример:

верните "Мое имя" и vbCr и "John" и vbCr и "Doe"