2010-04-09 18 views
1

我找了這個場景的解決方案 -最佳計算策略創建基本控制

我需要實現一個功能,讓用戶在不同的控件添加到canvas(WPF,定製和第三方),然後選擇任何其中之一併修改PropertyGrid中的一些屬性(更改需要反映在UI中)。

我不想公開任何控件的所有屬性只有一些(與最終用戶有關);除此之外,還有一些屬性對於所有控制是常見的,例如,標題,價值(價值將被綁定到某個控件的某個屬性,例如文本TextBox和內容Label)等

我想將所有常見屬性放在一個地方。

事情我感到困惑 -

  1. 如何創建這樣的基類,是否使用UserControl或該自定義控件?

  2. 控件,基類屬性和PropertyGrid之間的綁定如何工作?

  3. 什麼類型的對象會暴露給PropertyGrid

在這種情況下應該遵循什麼方法的任何想法,任何類型的輸入將真的有幫助。

回答

0

也許你應該從這本書開始WPF Control Development Unleashed

1)自定義控件應該更合適。
2)綁定 - 您應該瞭解更多關於TemplateBinding,RelativeSources綁定等,
3)您的屬性可以是普通屬性或依賴屬性。他們中的兩人都可以在物業網格中進行編輯。如果你的暴露財產是可綁定的,顯然,它應該是dp。如果你公開一個屬性(意味着一個具有公共訪問說明符的屬性),它就足以讓它在屬性網格中可用。

HTH