Количество выборок, .SelectedItems.Count
, не изменяется при
свойство Selected
имеет значение true для элемента в Items
Коллекция ListView
.
Пример:
lvPept.SelectedItems.Clear()
lvPept.Items(6).Selected = True
Dim newLen As Integer = lvPept.SelectedItems.Count
lvPept
является ListView
и содержит 10 элементов.
newLen
ожидается равным 1, но 0 при возникновении проблемы
и событие SelectedIndexChanged
не сработало. С
другие наборы данных это 1, как ожидалось, и
Событие SelectedIndexChanged наступило.
При каких обстоятельствах или в каком состоянии lvPept
может находиться в
чтобы это случилось? BeginUpdate
() / EndUpdate
() - это , а не
используется с lvPept
.
Справочная информация:
Я пытаюсь отследить проблему одного из пользователей моего
.NET-приложение с открытым исходным кодом, MSQuant
(http://msquant.sourceforge.net/), обнаружено.
У меня кончились идеи о том, что может быть причиной этого
проблема.
Проблема воспроизводима, и я могу воспроизвести ее в моем
среда разработки, Visual Studio 2008. Кажется,
не зависит от версии Windows (Windows 2000 / Windows XP 32 бит /
Windows XP (64-разрядная версия), версия среды выполнения .NET (2.0 / 3.5) и Visual
Студийная версия (2005/2008).
Другой контекст: приложение написано на VB.NET и в
C # и является приложением Windows Forms. Исходный код для
класс находится на http://shrinkster.com/14bg.
класс формы, в котором находится ListView
, был изначально сгенерирован
одной из ранних официальных версий Visual Studio, которая
поддерживается .NET, ок. 2002
Обновление 1: поскольку у меня есть и рабочий, и сломанный корпус, я
сравнили содержание lvPept
. Единственная разница
за исключением свойств "Handle", "MousePosition" и "TopItem"
(так как это другой белок с разными пептидами) является свойством
«Создан». Это было Неверно для разбитого дела. Это имеет смысл
что частично построенный объект не может функционировать должным образом,
но как это может произойти?
Обновление 2: свойство «Создано», являющееся ложным, оказалось
хорошее лидерство. Я думаю, что реальная проблема заключалась в том, чтобы сделать это в
конструкция время, а не форма загрузки время. теперь у меня есть
добавлены АСПЕРТЫ для свойства "Создано", переработаны и изменены
все операции происходят во время загрузки формы. Теперь работает
как и ожидалось, и пользователь с проблемой получил новый
версия приложения.
Старый плохой путь был там с тех пор, как приложение
начало в 2002 году. Мне просто интересно, если бы некоторые эксперты могли
пролить свет на то, почему это работает в 99,9% случаев и только
потерпел неудачу в нескольких случаях и воспроизводимо так.