Похоже, что вы используете рекурсию для просмотра списка.
Не будет ли
while(root.ListView.Items != null
&& !root.ListView.SelectedItems.Contains(root.ListView.Items[index]){
ObservableCollection[index].Status = "Passed";
index++;
}
return;
не работать?Если вы делаете вышеупомянутое, вы делаете 6000+ стековых фреймов, и при 1 МБ куска вы быстро потребляете память, и не похоже, что вам нужно состояние, которое позволяет рекурсия