0

我有以下结构

Public Structure matrixblock
  Public name As String
  Public firstReference As List
  Public secondReference As List
End Structure

我将一堆这些结构保存在另一个列表中:

dim result as List(of matrixblock)

我想将此列表绑定到 DataGrid,列中应为:

  • 第一栏:名称
  • 第二列:firstReference.Count
  • 第三列:secondReference.Count

有人可以帮我设置吗?谢谢

4

1 回答 1

0

如果直接绑定 matrixblock 结构,如果将任何项目添加到内部列表,绑定的计数属性将不会更新。您最好将其设为一个类,并实现 INotifyPropertyChanged 接口,并向您的类添加两个新属性,它们代表您列表的计数属性。

但是,如果您这样做了,仍然需要处理了解列表计数何时更改、何时将项目添加或删除到列表中的逻辑。你可以利用 ObservableCollections 来解决这个问题。

实际上,无论如何您都不应该直接绑定结构或类,而应该使用 MVVM 模式,并拥有一个 ViewModel 来公开您希望绑定到数据网格的属性。在 google 上进行快速搜索将为您指明 MVVM 模式的正确方向。

于 2012-07-12T09:55:13.740 回答