我知道依賴屬性在WPF中起着主要作用。但是我沒有得到綁定中限制的原因,目標屬性必須是依賴屬性。爲什麼它不能成爲任何財產?目標屬性必須是依賴屬性 - 爲什麼?
4
A
回答
0
如果」重新感興趣的話,你可以打開Reflector並查看一些與依賴項屬性和框架中綁定系統相關的代碼。有很多棘手的問題正在進行,以便對屬性路徑進行強健的高性能解析並將更改傳播到依賴項屬性。擁有標準的基礎架構還允許管理更復雜的用例,例如更新來自多個源的依賴屬性並解決優先級問題。例如,當動畫的默認設置是由樣式設置的屬性時,會頻繁出現。
依賴屬性的另一個好處是它們在內部封裝了很多行爲(如通知,驗證和強制),這意味着如果您看到依賴屬性,那麼您肯定會支持某些行爲。這與INotifyPropertyChanged相反,類實現者可能或可能不支持所公佈的接口。這意味着對於班級開發人員來說工作會更少
0
在DependencyProperty中的谷歌簡單搜索產生一些結果,你可能會發現相關。例如:http://blog.hackedbrain.com/articles/UnderstandingDependencyObjectAndDependencyProperty.aspx
而我想其中一個原因是上下文。綁定內置於WPF的基礎結構中,但C#類屬性不屬於此類。爲了讓WPF基礎結構找到可綁定屬性,您必須在代碼中聲明它們。此外,如果您聲明屬性,則會爲WPF基礎架構提供重要的元數據。
雖然我不同意,這將是更容易,如果這是可能的綁定到正規的屬性,但是這是certanly的不小的細節打擾您寶貴的大腦的情況下...
相關問題
- 1. 爲什麼依賴屬性必須是靜態
- 2. 爲什麼依賴屬性?
- 3. 什麼是WPF中的依賴屬性
- 4. 什麼是「TemplatedParent模板屬性」依賴項屬性優先
- 5. 依賴屬性
- 6. WPF:CLR屬性依賴屬性
- 7. 註冊屬性作爲依賴屬性
- 8. 依賴屬性
- 9. ListView.View是依賴屬性
- 10. 依賴屬性空
- 11. 必須不同的兩個UserControl依賴項屬性
- 12. 屬性更改依賴屬性
- 13. 依賴屬性WPF
- 14. 必須設置WPF UserControl的依賴項屬性的警報?
- 15. KindError:屬性r必須是SecondModel的實例,爲什麼?
- 16. 什麼是依賴屬性?它有什麼用途?
- 17. 爲什麼依賴屬性是「靜態的」?
- 18. 綁定依賴屬性到另一個依賴屬性
- 19. 依賴於其他屬性的依賴屬性
- 20. Silverlight中的依賴屬性
- 21. 標準屬性的作品,但依賴屬性在WPF
- 22. 依賴屬性依賴於另一個
- 23. 是否必須使用flags屬性?
- 24. 不依賴於UserControl的依賴屬性
- 25. 依賴屬性機制
- 26. WPF依賴屬性錯誤
- 27. @Target屬性值必須是類文字
- 28. 隱藏依賴屬性
- 29. WPF - 依賴屬性錯誤
- 30. CollectionPropertiesShouldBeReadOnly和依賴屬性
其實我google了很多,但沒有發現任何令人信服的東西。問題是我們可以使用OneWayToSource並使用像目標一樣的普通屬性行爲。所以看起來像只有普通的屬性綁定是不允許的。規則應該至少是目標或源應該是依賴屬性。如果是這種情況,那麼「目標財產應該是財產」的說法並不能很好地保持。 – thewpfguy 2010-08-01 04:53:05