2012-03-12 15 views
6

Öğelerimden bir öğeyi silmek istediğimde bir hata alıyorum ItemsSource'u kullanıyorum. Hata: İşlem salt okunur koleksiyonda desteklenmiyor.Windows 7 telefonundaki bir liste kutusundan öğeler nasıl silinir?

 MenuItem menuItem = (MenuItem) sender; 
     MessageBox.Show(menuItem.Header.ToString(), "Result", MessageBoxButton.OK); 

     ListBoxItem lb (ListBoxItem)listBoxJournal.ItemContainerGenerator.ContainerFromItem(((MenuItem)sender).DataContext); 

     liste.Remove((Note)lb.Content); 
     listBoxJournal.UpdateLayout(); 
     listBoxJournal.Items.Clear(); 
     listBoxJournal.ItemsSource = liste; 

Satır öğelerindeki hatayı alıyorum. Teşekkürler

cevap

4

ListBox'ta ItemsSource öğesini ayarlarsanız, Öğeler dahili olarak oluşturulur ve salt okunurdur. Bu durumda, öğeyle desteklenen öğe koleksiyonundan öğeyi silmeniz gerekir. Koleksiyon INotifyCollectionChanged uygularsa, koleksiyon değişiklikleri liste kutusuna yansıtılır.

ObservableCollection INotifyCollectionChanged

uygulanan bir listesidir
4

kullanım olup --- Listname.RemoveAt (ListBoxName.SelectedIndex);

İlgili konular