실버라이트 어플리케이션을 개발하다보면, ListBox의 ItemsSource와 List나 Collection과 같은 IEnumerable류를 바인딩 할 경우가 자주 있습니다. 휴즈플로우에서 진행한 최근 프로젝트 중에서 MVVM 패턴으로 개발한 어플리케이션이 있는데요. ListBox와 Collection류의 프로퍼티가 바인딩하게 되는 여러 뷰들을 빠른 속도로 전환하다보면, InvalidOperationException이 발생하였습니다. Exception에 담겨있는 에러메세지는 "개체의 현재 상태 때문에 작업이 유효하지 않습니다."라는 애매한 메세지였고, 예외가 발생한 곳은 뷰모델의 베이스용으로 구현해 놓은 ViewModelBase의 OnPropertyChanged(...) 함수 내부였습니다. 어플리케이션을..