2008-10-13 57 views
3

我對WPF相當陌生。我想開發一個支持數據綁定的數據網格控件。如何開發支持數據綁定的WPF數據網格控件?

關於現有控件的數據綁定有很多可用的信息,但我找不到任何有關如何從頭開始支持數據綁定的控件的信息。

我不期待這個問題的簡單答案,讓我開始的一個鏈接將是很好的。

回答

2

你打算建立一個DatGrid控件嗎?這裏有一個http://www.codeplex.com/wpf/Release/ProjectReleases.aspx?ReleaseId=14963

綁定是WPF的重要功能之一,Dependancyproperty實際上賦予了控件綁定和偵聽數據更改事件(數據綁定)的能力。 當你開發你的控制你不需要做任何特殊,使數據綁定的工作,只需要定義適當的依賴特性的控制,

你可以閱讀更多有關數據綁定這裏http://msdn.microsoft.com/en-us/library/ms752347.aspx

+0

還有一個Xceed WPF DataGrid的免費快遞版本。 http://xceed.com/Grid_WPF_Intro.html – liggett78 2008-10-13 11:05:43

0

感謝答案。

是的,當我說'網格'我的意思是'數據網格'。我編輯了這個問題,使其更加清晰。

MSDN主要文章介紹瞭如何使用數據綁定,並沒有太多說如果你想開發一個支持數據綁定的WPF控件你必須做什麼。

+0

如果你需要寫這樣的東西,你最好修改問題,就像你一樣。但不要張貼它作爲答案,你應該張貼它作爲對Joy的評論。 – Dheer 2008-10-13 12:24:09

0

下面的學習路徑將你穩固自己的方式

  1. 瞭解依賴屬性
  2. 編寫一個簡單的堆疊面板控制 - 獲得familar與安排措施覆蓋
  3. 使用一個DP與AffectsArrange設置方向
  4. 寫一個SimpleListBox控制 - 綁定到標量的列表(比如說List<string>
  5. 更新SimpleListBox控制支持INotifyCollectionChanged
  6. 更新SimpleListBox控制,以支持綁定到列表中(比如FirstNameList<Person>
  7. IWeakEventListener
  8. 的屬性
  9. 您可能要支持綁定到DataTable s,因此請添加對IListSource,ITypedList,IBindingListView和IBindingList的支持
  10. 要獲得良好的響應能力,您可能需要實施自己的虛擬化面板
  11. 添加支持模板