Это странная проблема, я не добавлял много кода, так как не знаю, с чего начинать. У меня есть элемент управления списком в виртуальном режиме, если я отфильтрую список, чтобы показать мне всех людей по имени Джон, я затем увижу 3 пользователей по имени Джон, затем я отменю фильтр, установив для всех значений значение null, и верну все данные в список, теперь я в списке есть несколько сотен элементов, но я могу видеть только 30 на экране, если не прокручиваю список вниз.
Затем я использую приведенный ниже код, чтобы установить флажок в каждой строке, все проверяются, кроме 3 Johns, но если я вижу 1 из 3 Johns в списке без прокрутки, а затем запускаю код ниже, видимый John проверяется.
for (int i = 0; i < this._items.Count; i++)
{
this._items[i].Checked = true;
}
Я проверил состояние флажка непосредственно перед его проверкой в вышеприведенном коде, и если Джон виден, то флажок считает, что он не отмечен (ложь), если он не виден, он считает, что он отмечен (правда). Таким образом, при наличии одного видимого Джона на экране флажок выглядит неотмеченным, и запуск теста доказывает, что он не отмечен, для двух Джонов, которых я не вижу, они считают, что они отмечены, но если я прокручиваю вниз, чтобы увидеть их, это не так.
Есть идеи?