为什么System.Data.DataTable作为ItemsSource工作,我怎么能编写自己的类来做同样的事情呢?

时间:2012-09-22 18:36:34

标签: wpf data-binding

我正在编写一个花哨的业务逻辑类,它本质上是一个动态构造的具有未知列数的表,其中包括各种验证,数据处理等方法。

这是IEnumerable专门的行对象,允许通过BusinessData this[string columnName] { get { ... } }访问器访问其列。几乎像DataTable

我希望能够将数据绑定到WPF DataGrid,所以我想写下以下内容:

 dataGrid1.ItemsSource = myFancyMemoryTable;

但是,当然,它不起作用,因为DataGrid将自己绑定到我的行对象的公共属性,而不是绑定到包含业务数据的列。我如何从中得到我想要的行为?

1 个答案:

答案 0 :(得分:1)

我无法专门跟踪DataTables / DataRows检索属性的位置,但是如果您在源集合上实现ITypedList应该有效。