当DataGridView绑定到List时,.Net跟踪会发生更改

时间:2015-01-21 17:04:44

标签: c# .net vb.net winforms datagridview

我有一个.Net 4.0 Winforms应用程序,它有一个绑定到List(对象)的DataGridView。

我需要实现某种类型的更改跟踪,以便当用户在网格视图中编辑数据时,我可以确定列表中的哪些对象已被修改。

我正在寻找的是跟踪列表项更改的最轻量级方法。我在应用程序中有很多DataGridViews和很多列表。许多List对象都有很多属性,所以我想避免臃肿并让代码尽可能干净。

在应用程序的较早实现中,我们使用DataSet并将表绑定到DataGridViews。这很好,因为我们可以从底层的DataTables获取RowState。据推测,单独的DataGridViews不能维护我能得到的任何状态跟踪信息吗?

目前我正在考虑在我的列表中的对象上实现IChangeTracking,但如果我错过了已经实现的跟踪绑定到DataGridViews的列表中的更改的方法,我将不胜感激。

我使用的代码类似于以下内容:

Private Class MyData
    Public Data1 As String
    Public Data2 As String
End Class

Private Sub DoStuff()
    Dim MyList As New List(Of MyData)

    MyDataGridView.DataSource = MyList
    MyDataGridView.Columns(0).DataPropertyName = "Data1"
    MyDataGridView.Columns(1).DataPropertyName = "Data2"
End Sub

0 个答案:

没有答案