Это немного странный вопрос, и я уверен, что есть более простой способ сделать это, но ...

У меня есть метод, который возвращает Список имен. Я просматриваю этот список с помощью цикла foreach . Я добавляю каждое имя в одну длинную строку , чтобы я мог установить текст ячейки таблицы в эту строку. Но я не могу заставить его добавить новую строку . Это возможно?

Вот фрагмент кода:

Ранее мой цикл таблицы:

TableCell tempCell = new TableCell();

Проблема:

// Returns a List of Employees on the specified day and time.
List<string> EmployeeList = CheckForEmployees(currentDay, timeCount);

string PrintedList = "";
foreach (String s in EmployeeList)
{
    PrintedList += s;
    // PrintedList += s + System.Environment.NewLine;
    // PrintedList += s + " \n";
}
tempCell.Text = PrintedList;

Обе закомментированные строки кода не работали. Любые идеи?

1
titaniumshovel 16 Мар 2014 в 03:34
 – 
hjgraca
16 Мар 2014 в 03:38
Я зашел сюда сразу после того, как увидел эту тему. Оба предложения не сработали.
 – 
titaniumshovel
16 Мар 2014 в 03:41
1
Я бы рекомендовал использовать stringbuilder. Кроме того, вы можете попробовать использовать тег
.
 – 
Charls
16 Мар 2014 в 03:45
Я просто переписал код с помощью StringBuilder. Я буду использовать это впредь, это намного лучше.
 – 
titaniumshovel
16 Мар 2014 в 04:08

2 ответа

Лучший ответ

Вам нужно добавить тег разрыва, так как вы хотите, чтобы новая строка отображалась в HTML. Итак, добавьте <br/>. Я бы также рекомендовал использовать конструктор строк, если это больше, чем несколько итераций.

1
safetyOtter 16 Мар 2014 в 03:43
Я чувствую себя глупо, даже не пытаясь это сделать. Эта строка кода работала: PrintedList += s + "
"
 – 
titaniumshovel
16 Мар 2014 в 03:43
Рад, что это помогло. Спасибо SafetyOtter за редактирование моего ответа. (Или, может быть, я просто показывал, как работает тег break) :)
 – 
attila
16 Мар 2014 в 03:46

Ячейка таблицы как в ячейке таблицы HTML? Возможно, вам нужно использовать тег «br» вместо обычного символа новой строки?

Другое дело, вы должны использовать StringBuilder вместо того, чтобы выполнять конкатенацию строк, как вы это делаете. Или даже лучше, String.Join .

string PrintedList = String.Join("br-tag", EmployeeList);

Опять же, не уверен, что именно br-tag вам нужен, но по возможности предпочитаю использовать методы класса String.

1
user1323245 16 Мар 2014 в 03:44
Спасибо за ответ! Это был тег
, который мне был нужен. Аттила ответил на 5 минут раньше вас, так что я дал ему чек, но я понятия не имел, что String.Join был вещью, очень полезной!
 – 
titaniumshovel
16 Мар 2014 в 04:09