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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Не выделять первый элемент при баиндинге ListBox 
V
    Опции темы
Idsa
Дата 8.6.2009, 16:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

Репутация: 4
Всего: 62



После баиндинга ListBox'а выделяется первый элемент. Как бы сделать так, чтобы этого не происходило?
P. S. Совсем забыл WinForms smile


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
KelTron
Дата 10.6.2009, 18:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: 5
Всего: 38



Ну, например, так:

Код

this.listBox.DataSource = ...
this.listBox.SelectedIndex = -1;



--------------------
Тысячами незримых нитей обвивает тебя Закон. Разрубишь одну - преступник. Десять - смертник. Все - Бог.
Эвенгар Салладорский, основатель Школы Тьмы.
PM MAIL   Вверх
Idsa
Дата 10.6.2009, 18:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

Репутация: 4
Всего: 62



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


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
jonie
Дата 10.6.2009, 23:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 5
Всего: 118



ну при байдинге самом сделай beginUpdate - endUpdate а между ними вставь байдинг+установку индекса... или я чет не понимаю..


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
Idsa
Дата 11.6.2009, 20:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

Репутация: 4
Всего: 62



jonie, то, что надо smile +1 А я креведка smile


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
Idsa
Дата 11.6.2009, 21:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

Репутация: 4
Всего: 62



Я таки погорячился. BeginUpdate-EndUpdate влияет только на GUI. Желаемого эффекта в отношении SelectedIndex добиться не удалось :(



--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
jonie
Дата 11.6.2009, 22:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 5
Всего: 118



ну запомни SelectedIndex, перед байдингом, после байдинга выставь обратно. Это проблема ?


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
Idsa
Дата 11.6.2009, 22:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

Репутация: 4
Всего: 62



jonie, проблема немного в другом. У ListBox'а в SelectedIndexChanged происходит считывание данных из базы. И мне бы не хотелось, чтобы выделение элемента (а, соответственно, и обращение к базе) происходило автоматически при баиндинге.  Конечно, я могу завести какой-нибудь флаг и на основании его значения производить/не производить считывание... но хотелось узнать, как отменить принудительное выделение.


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
jonie
Дата 12.6.2009, 08:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 5
Всего: 118



а как же наследование? Отнаследуйся и всю логику запихай внутрь класса MyListBox. OnSelectedIndexChanged должна быть virtual protected. И никаких снаружи переменных не будет. Только я бы добавил два метода BeginDataRefresh() и EndDataRefresh(), а не использовал BeginUpdate\EndUpdate


Это сообщение отредактировал(а) jonie - 12.6.2009, 08:17


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
Idsa
Дата 12.6.2009, 11:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

Репутация: 4
Всего: 62



jonie, да-да, можно и так. Просто я совсем расслабился в WPF и, ненадолго окунувшись в WinForms, забыл умерить свои хотелки smile


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

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


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

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


 




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


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

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