Привет, я связываю коллекцию от Caliburn Micro в представлении управления ListBox.Вот оно.
public BindableCollection<UserInfo> Friends
{
get { return _friends; }
set
{
_friends = value;
NotifyOfPropertyChange(() => Friends);
}
}
Элементы ListBox - это тип UserInfo.
Привет, я сортирую и группирую элементы списка, я использую CollectioView для этой цели.
При инициализации ListBox я сортирую и группирую элементы этим методом.
private ICollectionView _currentView;
//...
private void SortContactList()
{
_currentView = CollectionViewSource.GetDefaultView(Friends);
_currentView.GroupDescriptions.Add(new PropertyGroupDescription("TextStatus"));
_currentView.SortDescriptions.Add(new SortDescription("TextStatus", ListSortDirection.Ascending));
_currentView.SortDescriptions.Add(new SortDescription("Nick", ListSortDirection.Ascending));
}
TextStatusи Nick являются свойствами класса userInfo.
Когда я обновляю значения элемента в привязываемой коллекции Friend, мне бы хотелось, чтобы был способ уведомления представления коллекции об этом изменении.Потому что мне нужно переместить элемент в нужную / хорошую группу.
например
Friend[0].TextStatus = "Ofline" -> is in offline group
Я изменяю значение в Интернете;
Friend[0].TextStatus="Online" -> move in online group
и здесь я хочу уведомить представление коллекции (_currentView) об изменении коллекции друзей.