我有一个带有 ObservableCollection (Of T) 的 ListView 数据源,其中“T”是 EF 的一个实体。要添加/编辑项目,请使用 IEditableCollectionView。它完美地工作。问题是取消修改现有项目的操作。
Private Sub edit_Click(ByVal sender As Object, ByVal e As RoutedEventArgs) Handles ListBoxMain.MouseDoubleClick
If ListBoxMain.SelectedItem Is Nothing Then
MessageBox.Show("No item is selected")
Return
End If
Dim editableCollectionView As IEditableCollectionView = TryCast(ListBoxMain.Items, IEditableCollectionView)
Dim win As New ChangeItemWindow()
editableCollectionView.EditItem(ListBoxMain.SelectedItem)
win.DataContext = ListBoxMain.SelectedItem
If CBool(win.ShowDialog()) Then
editableCollectionView.CommitEdit()
Else
editableCollectionView.CancelEdit()
End If
End Sub
方法“editableCollectionView.CancelEdit()”,抛出以下异常:“当前编辑元素不支持CancelEdit。” 我试图看看是什么给了我属性“CanCancelEdit”并且是“False”。
谢谢你。