Обновить список - PullRequest
       8

Обновить список

0 голосов
/ 27 апреля 2009

Я связал ListBox с базой данных SQL CE с помощью этого кода:

ItemsSource="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type local:DatabaseWindow}}, Path=Database.Photos1}"

Этот список заполнен правильно. Но когда я пытаюсь вставить строку в базу данных (InsertOnSubmit + SubmitChagnes), ListBox не обновляется!

Я пробовал:

ListBox.Items.Refresh();

ListBox.GetBindingExpression(ListBox.ItemsSourceProperty).UpdateTarget();

ListBox.ItemsSource = null; 
ListBox.ItemsSource = this.Database.Table;

Ничего из этого не помогло. Как я могу обновить ListBox?!

PS: после перезагрузки базы данных строка появляется в ListBox. PPS: Если кто-нибудь знает учебник по SQL CE с WPF, где показана вставка в ListBox - это тоже было бы здорово!

1 Ответ

1 голос
/ 27 апреля 2009

Убедитесь, что данные, которые вы назначаете для ItemsSource, реализуют INotifyCollectionChanged. (например, вы можете поместить свои элементы в коллекцию ObservableCollection) Кроме того, чтобы изменения в ваших отдельных элементах были отражены, вы должны реализовывать INotifyPropertyChanged.

...