VB .NET / Логика поведения контрола ListBox: программное выделение строк после удаления значений в списке
Запись от mozgotron размещена 15.12.2019 в 16:01
В нижеприведённом Листбоксе удаление записи в любой позиции сопровождается последующим программным выделением записи, следующей после удалённой записи, либо предшествующей ей записи. В зависимости от расположения удаляемой записи. Так же запись выделяется при открытии приложения, если в Листбоксе есть хотя бы одна запись. Независимо от количества записей — это первая запись. Если в Листбоксе нет записей — ничего не выделяется. После удаления записи, автоматически выделяется запись, которая встала на место удалённой. Если после удалённой записи других нет, то автоматически выделяется запись, предшествующая удалённой. Если в списке вообще не осталось записей, то автоматического выделения не происходит. До тех пор, пока после удаляемой записи есть хотя бы одна запись, выделяется одна и та же позиция Листбокса. Как только записей после удалённой не остаётся, выделяемая позиция начинает смещаться вверх по списку вместе с последней записью. Программная реализация описанной логики поведения:
ZIP-архив с пробным EXE-файлом, демонстрирующий логику поведения: Листбокс с уменьшением записей.zip Adler32: 2BEAAB2E CRC32: 49B365EB MD5: 7CAA9A8462FDBF2AE7D7301B6379384C SHA-1: C0E75F75E8BFFDAE7F72D428D3D4B7B6C70B2BD5 SHA-256: 37E71339347D9752C7B8A1E77CF5FE8BD8C7A0606AC1ECC45BDFCBBFC558 F595 |
Всего комментариев 2
Комментарии
-
надо добавлять в заголовке темы, что это на VB
знал бы заранее - вообще бы не открывал блогЗапись от untyped размещена 15.12.2019 в 19:42 -
Запись от mozgotron размещена 16.12.2019 в 15:57