2010-12-27 4 views
0

DataContext의 속성에 바인딩하는 XAML 요소가 있습니다.Silverlight : 여러 번 호출되는 바인딩

<ListBox ItemsSource="SectionViewModels" /> 

이 속성에 바인딩됩니다.

 public IList<SectionViewModel> SectionViewModels 
    { 
     get 
     { 
      // ... 
     } 
    } 

페이지가로드 될 때이 속성은 여러 번 호출되지만 나는 어떤 PropertyChanged 이벤트도 해고하지 않았다. 이것이 예상되는가요, 아니면 버그가 있다는 뜻입니까?

(저는 Windows Phone 7에서 Silverlight 응용 프로그램을 만들고 있습니다)

답변

0

(I는 윈도우 폰 7에 실버 라이트 응용 프로그램을 짓고 있어요), 당신은 이런 종류의에 대한 ObservableCollection을 사용해야합니다 - 당신은 직접 결합하는 경우 Silverlight 또는 WP7의 ObservableCollection 컬렉션을 사용하면 99.9 %의 쓰레기를 제거하여 크로스 스레드 바인딩을 직접 만들려고합니다.

+0

'ObservableCollection'을 사용하지 않는 이유는'Section' 객체가 하나이고'SectionViewModels'가 그 컬렉션에 대한 쿼리이기 때문입니다. 콜렉션 대신에 enumerable을 사용함으로써, 두 개가 동기화되어 있다고 걱정할 필요가 없습니다. –

관련 문제