DataListView with DataSource of ObservableCollection 不显示新添加的对象

DataListView with DataSource of ObservableCollection does not display newly added objects

  1. 创建了具有单个按钮和单个 DataListView 的表单。

  2. 将此代码添加到表单中:

    Dim dummies As New ObservableCollection(Of Dummy)

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        dlvDummies.DataSource = dummies
    End Sub

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        dummies.Add(New Dummy(Now.ToLongTimeString()))
    End Sub

    Class Dummy
        Public Property X As String
        Sub New(x As String)
            Me.X = x
        End Sub
    End Class
  1. 运行 应用程序,按下按钮。在调试器中,我可以明显地看到一个新条目添加到 ObservableCollection 并相应地添加到 DataListView .Objects:

  1. 项目从未出现在 GUI 中(是的,DataListView 的唯一列在设计时已经设置了方面名​​称 "X"。)

这实际上是我在一个更大的应用程序中遇到的问题的简单再现。 中给出的答案暗示这应该 "just work"。这是缺陷还是我的用户错误?

用 BindingList(Of foo) 替换 ObservableCollection(Of foo) 已修复,或者更确切地说是解决了这个问题。

我认为,根据在 https://sourceforge.net/p/objectlistview/discussion/812923/thread/ab0d6208/ that the accepted answer in 看到的讨论是错误的,应该进行编辑。