|
вопрос по ListBox-у с MultiSelect-ом и его событиям
|
|||
---|---|---|---|
#18+
На форме есть два списка со множественным выбором. Требуется, чтобы при выборе одного или нескольких значений в первом списке выбранные значения отображались бы во втором списке. Всё относительно неплохо работает через событие AfterUpdate первого списка при выборе значений из списка мышью (используется ItemsSelected в цикле). Если же выбирать значения с помощью клавиатуры стрелками - всё не работает должным образом. Это происходит из-за того, что выделение значений списка происходит после события AfterUpdate списка и в коллекции ItemsSelected новые значения просто не успевают появиться! Каким образом можно обойти данную проблему? Я реализовал через дополнительную кнопку, при щелчке по которой происходит заполнение и отображения второго списка. Но это какие-то костыли. Наверняка есть более элегантное решение. В прикрепленном файл примера. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.10.2015, 19:40 |
|
вопрос по ListBox-у с MultiSelect-ом и его событиям
|
|||
---|---|---|---|
#18+
Замените связный выбор на Простой. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.10.2015, 20:03 |
|
вопрос по ListBox-у с MultiSelect-ом и его событиям
|
|||
---|---|---|---|
#18+
Мне нужен связный выбор для использования клавиатуры. В моем приложении в данном случае было бы удобнее работать без мыши. Но я подумаю над этим, если не будет более толкового решения. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.10.2015, 21:22 |
|
вопрос по ListBox-у с MultiSelect-ом и его событиям
|
|||
---|---|---|---|
#18+
Режим Простой дает удобный функционал для работы с клавиатурой. Передвижение навигационными стрелками, выбор/отказаться пробелом. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.10.2015, 22:10 |
|
вопрос по ListBox-у с MultiSelect-ом и его событиям
|
|||
---|---|---|---|
#18+
Неофит81 , попробуйте добавить на событие KeyUp Me.Repaint: Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2015, 07:10 |
|
вопрос по ListBox-у с MultiSelect-ом и его событиям
|
|||
---|---|---|---|
#18+
Да просто из lst1_KeyUp вызвать lst1_AfterUpdate. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2015, 10:51 |
|
вопрос по ListBox-у с MultiSelect-ом и его событиям
|
|||
---|---|---|---|
#18+
Всем большое спасибо за ответы - проблема решена. 2mds_world: буду использовать Простой выбор, так как изначально забыл про выделение пробелом, а после тестирования вариантов с Простым выбором и Связным выбором (работающим адекватно) удобнее оказался Простой. 2Agapov_stas: действительно, отлично работает. Даже без Me.Repaint. Просто нужно сделать одинаковые процедуры в AfterUpdate и KeyUp. 2lord_de_tempest: да, самый простой способ. В итоге выбрал Простой выбор, так как только с ним получилось выбрать "один", "два" и "четыре" без привлечения мыши. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2015, 13:19 |
|
|
start [/forum/topic.php?desktop=1&fid=45&tid=1614359]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
35ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
others: | 10ms |
total: | 131ms |
0 / 0 |