ListBox에서 항목을 선택하지 않으면 코드가 올바르게 작동합니다.ListBox.Items를 통해 Intertering 할 때 예외가 발생합니다.
ListBox에서 하나 이상의 항목을 선택한 경우 foreach 반복은 첫 번째 항목을 평가 한 후에 중단됩니다. 예외는 InvalidOperationException이며 세부 정보는 Items 컬렉션이 수정되었음을 나타냅니다.
foreach (object item in listBoxFiles.Items) //InvalidOperationException occurs
{
if (listBoxFiles.SelectedItems.Contains(item))
{
//do nothing
}
}
편집 : 이을 ListBoxItem.IsSelected처럼 내가 뭔가를 찾고 있었다 그러나 그것은 존재하지 않습니다.
아이템 콜렉션에는 아무 것도하지 않습니까? –
사실, if 절 안에있는 모든 코드를 제거한 후에도 오류는 계속 재생산됩니다. – kennyzx
아무 것도 선택하지 않으면 throw됩니다. – EricSchaefer