我有一个datagrid,想要将它绑定到一个二维数组,并自动将数组中的更改反映到ui(例如,使用可观察的集合)。但是,我现在陷入困境,因为datagrid.itemssource = array给我“'对类型为'WpfApplication1.MainWindow'的构造函数的调用与指定的绑定约束相匹配引发异常。” “错误。另外我不知道如何自动更新ui?什么可能的解决方案?
答案 0 :(得分:1)
为什么不将二维数组转换为一维集合? 您可以创建动态类(使用Dotnet 4.0)。
答案 1 :(得分:1)
WPF UI(包括DataGrid)仅在绑定对象实现INotifyCollectionChanged(对于集合)或INotifyPropertyChanged(对于单个对象)时自动更新。如果要显示一组对象并同时自动更新所包含对象的集合和属性,除了包含实现INotifyPropertyChanged的对象的ObservableCollection(实现INotifyCollectionChanged)之外别无选择。
如何创建符合这些要求的对象取决于您以及数据模型的特定要求/限制。