Я столкнулся с проблемой, связанной с StringBuilder и Listbox.
Я создал список в WinForm и назвал его lbOut и строку StringBuilder с именем log.StringBuilder append и Listbox
Код:
public partial class formMain : Form
{
StringBuilder log = new StringBuilder();
public formMain()
{
InitializeComponent();
log.AppendLine("This is a test");
lbOut.Items.Add(log);
log.AppendLine("Second line");
}
}
Если я выполняю этот код, я должен получить:
Это испытание
Вместо этого я получаю:
Это строка testSecond
Почему это?
Я имею в виду, «Вторая строка» даже не добавляется к lbOut.
Я работаю с Visual Studio 2010, .NET 4.0 Vista.
Обновление: Спасибо всем за ответы. Сегодня я узнал немного больше. Я не могу проголосовать (пока), но я был очень доволен ответами.
Я прощал об объекте ссылки
Потому что, если вы добавите «журнал» во второй раз перед его печатью, вы все равно ссылаетесь на тот же объект (который был изменен!), Когда вы печатаете его позже. Я думаю, что вы не показали нам весь ваш код, потому что, если вы выполните * этот * код, вы ничего не получите. –