본문 바로가기

Silverlight

[삽질방지] 값이 예상 범위를 벗어났습니다.


 '값이 예상 범위를 벗어났습니다.'

 이 error 또는 다음 과 같은 에러.



이 에러는 이미 부모를 가지고 있는 객체가 또다시 Children Add 가 되었을 때 일어납니다.

예외적으로 ItemsControl의 경우 Item으로 셋팅된 UI 객체가 다시 한번 Item으로

셋팅되거나 Children.Add 되는 경우에 발생할 수 있습니다. 

이것은 버그성으로 보이나 ItemsControl(ex. ListBox) 에서 Items로 셋팅된

UI객체는 부모가 다시재설정 될 수 없습니다. 위에 에러가 발생합니다. 주의하세요.

쉽게 말해 다음과 같은 코드는 작성하지 말라는 이야기입니다.

            Rectangle rc = new Rectangle();           
            MyListBox.Items.Add(rc);
            MyListBox.Items.Remove(rc);
            MyListBox.Items.Add(rc);


[출처] Error 1001