2014-03-25 2 views
1

저는 mvvmcross를 처음 사용했습니다. 내 뷰 모델에서 MvxGridView에 대한 컬렉션을 바인딩했습니다.컬렉션에서 MvxGridView 속성이 변경되지 않았습니다.

처음에는 바인딩이 ItemsSource의 사용자를 멋지게 표시합니다. 그러나 아래로 스크롤하면 더 많은 사용자를로드하고 Users 컬렉션에 추가 한 다음 컬렉션에서 RaisePropertyChanged를 수행합니다. 하지만 아무 일도 일어나지 않을 것입니다. 기본 사용자 컬렉션이 변경되는 동안 동일한 사용자가 표시됩니다. 바인딩이 작동하려면 컬렉션에 특별한 작업을 수행해야합니까? 또는 어떻게 든 그리드 뷰를 다시 그려야합니까?

+2

나는이 목록에 추가하는 http://stackoverflow.com/questions/18170151/items-not-showing-in-mvxlistview/18181316#18181316 0 University of Florida의 TIY과 같은 문제라고 생각하고 고려 ObservableCollection 사용하기 – Stuart

+0

마지막 코멘트의 오타를 유감스럽게 생각합니다 - 키보드 오류와 같은 오류가 하나 있습니다! 또한 다음 릴리스에는 https://github.com/MvvmCross/MvvmCross/pull/619가 포함될 것이라고 덧붙이고 싶지만 현재 문제에 대한 최선의 해결책이라고 생각하지 않습니다. – Stuart

+0

Observablecollection이 트릭을했습니다. 나는 그것들에 대해 매우 잘 알고 있기 때문에 피곤하다고 생각한다. 어쨌든 고마워. –

답변

1

ObservableCollection을 사용하여 MvxGridView에서 내용을 업데이트해야합니다.

private ObservableCollection<Item> items = new ObservableCollection<Item>(); 
public ObservableCollection<Item> Items 
{ 
    get { return items; } 
    set { items = value; RaisePropertyChanged(() => Items); } 
} 
관련 문제