Модераторы: gambit, Partizan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Привязка данных объекта из списка 
V
    Опции темы
Felan
Дата 23.4.2009, 06:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 284
Регистрация: 2.8.2007
Где: Самара

Репутация: нет
Всего: 7



-Mikle-, Понятно... Спасибо за разъяснения.

diadiavova, Именно так. Именно для List. Для BindingList все нормально.


--------------------
// Любая сложная система - это темный лес. Каждый в этом лесу протаптывает свои тропинки, по ним и бегает. Лишь изредка, сходя с них, мы находим много интересного, а порою и страшного.
PM MAIL WWW ICQ   Вверх
-Mikle-
Дата 23.4.2009, 07:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Невидимка Vingrad'а
***


Профиль
Группа: Экс. модератор
Сообщений: 1672
Регистрация: 22.6.2003
Где: Казахстан, Астана

Репутация: 8
Всего: 59



Цитата(diadiavova @  23.4.2009,  01:06 Найти цитируемый пост)
-Mikle-, в смысле привязку надо выполнять после того, как все элементы добавлены?

Не все, хотябы один, и справедливо это для только для коллекций не реализующих IBindingList  smile 
Это больше похоже на баг при реализации биндинга внутри класса TextBox, видимо программист очень сильно надеялся на это событие (ну а что ему оставалось еще делать, не в таймере же проверять число элементов в списке). Теперь, если в списке ноль элементов, то он видимо не подписывается на событие PositionChanged и надеется сделать это при обработке события изменения коллекции.
Но если мы ему подсунем список хотя бы с одним элементом, то он делает подписку на событие и потом, после добавления новых элементов и выбора текущего из списка, он спокойно отображает текущий. Повторю, это мое предположение построенное на небольшом анализе, если кто-то знает 100% ответ, то было бы интересно его узнать. Мне было лень лезть в рефлектор и изучать код биндинга, чтоб разобраться с этим. smile 

Еще один вариант, что это баг не TextBox, а CurrencyManager, являющегося реальным объектом лежащим в BindingContext. То есть, что это именно он не хочет выдавать события PositionChanged, если изначально IList был пуст. Опять таки, надо смотреть в рефлектор, чтобы подтвердить/опровергнуть это предположение.


--------------------
Если тебе плюют в спину, значит ты впереди...
PM   Вверх
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка Windows Forms | Следующая тема »


 




[ Время генерации скрипта: 0.0415 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.