//在ListView中增加一行
private void button9_Click(object sender, RoutedEventArgs e)
{
//int selectIndex = lv.SelectedIndex;
ICollectionView view = (ICollectionView)CollectionViewSource.GetDefaultView(lv.ItemsSource);
List<Setting> items = new List<Setting>();
items = (List<Setting>)view.SourceCollection;
items.Add(new Setting("", false, "", "", "")); //Setting类用来增加ListView中的一行
lv.Items.Refresh();
}
为什么我每次点击button9后,能够增加一行,但是之前每行ComboBox控件选择的项数据都被清除了?
private void button9_Click(object sender, RoutedEventArgs e)
{
//int selectIndex = lv.SelectedIndex;
ICollectionView view = (ICollectionView)CollectionViewSource.GetDefaultView(lv.ItemsSource);
List<Setting> items = new List<Setting>();
items = (List<Setting>)view.SourceCollection;
items.Add(new Setting("", false, "", "", "")); //Setting类用来增加ListView中的一行
lv.Items.Refresh();
}
为什么我每次点击button9后,能够增加一行,但是之前每行ComboBox控件选择的项数据都被清除了?
List<Setting> items = new List<Setting>();
items = (List<Setting>)view.SourceCollection;
private void button9_Click(object sender, RoutedEventArgs e)
{
items.Add(new Setting("", false, "", "", "")); //Setting类用来增加ListView中的一行
lv.Items.Refresh();
}
private void button9_Click(object sender, RoutedEventArgs e)
{
//int selectIndex = lv.SelectedIndex;
ICollectionView view = (ICollectionView)CollectionViewSource.GetDefaultView(lv.ItemsSource);
List<Setting> items = new List<Setting>();
items = (List<Setting>)view.SourceCollection;
items.Add(new Setting("", false, "", "", "")); //Setting类用来增加ListView中的一行,我单步调试到这里items项内的ComboBox的值是我赋的值,但是执行下面一步刷新时,界面的值没有了,但是items的值是对的。
lv.Items.Refresh();
}求高手帮忙看下啊,是不是刷新的lv界面,但是我的值是赋给items了?这个怎么解决?
最典型的是 ObservableCollection<(Of <(T>)>)如果你绑定的是 DataContext 或 ObjectContext
可以参考: ObservableCollection + ReadOnlyObservableCollection + ExecuteDynamicInsert