Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Разработка Windows Forms > ListBox.DataSource и изменение данных


Автор: Heinzz 22.7.2009, 21:01
Не могу разобраться smile 

*создаю список объектов и заполняю                  List<>
*прицепляю его к ListBox       ->        listBox1.DataSource = myList;
все отображается верно, но если я добавляю новые записи в свой список они в коллекцию listBox1.Items не передаются и соответственно и не отображаются.
Как быть?

Автор: diadiavova 22.7.2009, 21:18
http://msdn.microsoft.com/ru-ru/library/ms132679.aspx

Автор: Heinzz 22.7.2009, 21:47
Спасибо, работает smile 
но все же, неужели никак обычные коллекции не приделать?

Автор: diadiavova 22.7.2009, 21:49
Цитата(Heinzz @  22.7.2009,  22:47 Найти цитируемый пост)
неужели никак обычные коллекции не приделать

Эта тоже обычная. Можно при изменении коллекции обновлять DataSource, только ни к чему это.

Автор: Heinzz 24.7.2009, 17:05
Спасибо

Автор: jonie 24.7.2009, 22:54
Heinzz В общем вам читать про паттерн observe и, применительно к .NET про байдинг (binding) данных (гугл по слову IPropertyNotifyChanged расскажет много интересного)

Автор: Heinzz 25.7.2009, 08:35
Спасибо, буду искать
 smile 

Автор: Heinzz 27.7.2009, 19:53
с binding не получилось.
Получилось для приложений WPF

Код

listBox1.ItemsSource = myList;
//изменяем записи в myList
listBox1.Items.Refresh();
//опять все отображается верно


всего две строчки. Жаль что в WinForms так не выйдет

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)