0
我正在開發一個WPF應用程序並使用mvvm light工具包。我的viewmodel包含一個更新ObservableCollection的計時器。另外我有一個ListCollectionView。更新後保留Datagrid多重選擇
ObservableCollection<MyType> obs = new ObservableCollection<MyType>();
ListCollectionView cView = new ListCollectionView(obs);
public void timer_elapsed(object sender, ElapsedEventArgs e)
{
if(myOperation == add)
obs.InsertItem(0, newObject);
else if(myOperation == remove)
obs[...].Close();
else if(myOperation == modify)
obs[...] = newObject;
}
在我看來,我一個DataGrid綁定到的ListCollectionView:
<DataGrid
ItemsSource="{Binding cView}"
AutoGenerateColumns="True"
SelectionUnit="FullRow"
SelectionMode="Extended"
/>
每當的ObservableCollection是由定時器操作的一個改變,ListCollectionView的改變,以及,所以是數據網格的內容。 我可以在更改之間選擇多行,但只要數據網格內容更改,我的選擇就會丟失。
即使內容已更改,如何保留所有數據網格選擇?