3

我对 WPF 相当陌生。我想开发一个支持数据绑定的数据网格控件。

有很多关于数据绑定到现有控件的信息,但我找不到任何信息如何从头开始开发支持数据绑定的控件。

我不希望这个问题有一个简单的答案,让我开始的链接会很好。

4

4 回答 4

2

您是否打算构建一个 DatGrid 控件?这里有一个http://www.codeplex.com/wpf/Release/ProjectReleases.aspx?ReleaseId=14963

绑定是WPF的重要特性之一,Dependancyproperty实际上赋予了控件绑定和监听数据变化事件的能力(Data Binding)。当你开发你的控件时,你不需要做任何特别的事情来使 DataBinding 工作,只需要为控件定义适当的 Dependency 属性,

您可以在此处阅读有关 DataBinding 的更多信息http://msdn.microsoft.com/en-us/library/ms752347.aspx

于 2008-10-13T09:47:00.420 回答
0

以下学习路径将让您踏上坚实的道路

  1. 了解依赖属性
  2. 编写一个简单的堆栈面板控件 - 熟悉ArrangeMeasure覆盖
  3. 使用 DPAffectsArrange设置方向
  4. 编写一个 SimpleListBox 控件 - 绑定到一个标量列表(比如List<string>
  5. 更新 SimpleListBox 控件以支持INotifyCollectionChanged
  6. 更新 SimpleListBox 控件以支持绑定到列表的属性(比如FirstNameon List<Person>
  7. IWeakEventListener
  8. 您可能想要支持绑定到DataTables,因此添加对 IListSource、ITypedList、IBindingListView 和 IBindingList 的支持
  9. 为了获得良好的响应能力,您可能需要实现自己的虚拟化面板
  10. 添加对模板的支持
于 2008-10-30T02:05:13.253 回答
0

微软几天前发布了一个 DataGrid 作为 WPF 工具包的一部分:

请参阅 2008 年 10 月在 codeplex 上的 WPF 工具包

您可以使用数据绑定和验证。

于 2008-10-30T13:25:53.910 回答
0

感谢你的回答。

是的,当我说“网格”时,我的意思是“数据网格”。我编辑了问题以使其更清楚。

MSDN 上的文章主要介绍了如何使用数据绑定,如果要开发支持数据绑定的 WPF 控件需要做什么,并没有过多说明。

于 2008-10-13T11:26:20.080 回答