我正在使用MVVM學習WPF,對於初學者,我在MVVM上查看了Jason Dolinger的視頻。在那裏他提到,與MVF一起使用MVVM的優點之一是雙向數據綁定。我的問題是雙向數據綁定是什麼意思?是否有能力1)將數據從控件(View)綁定到VM中的屬性,以及2)集合或屬性中的任何更改都反映在視圖中?如果我錯了,誰能詳細解釋一下它是什麼,它有什麼優勢?這可能是一個非常簡單的疑問,但我對WPF很陌生,現在它的術語已經從WinForms中移除了。WPF中的雙向數據綁定究竟是什麼?
1
A
回答
3
你沒有錯。雙向數據綁定就是這個意思。
您將視圖與其ViewModel相關聯,因此您在其中一個視圖中所做的每個更改都會反映到另一個視圖中。
要獲得這種行爲,必須在ViewModel中實現接口INotifyPropertyChange,或者使用依賴屬性而不是普通的CLR屬性。
您也可以使用其他類型的數據綁定,例如單向或單向來源。然而,默認是雙向的。
希望這有助於。問候
0
一般的想法是,不僅是反映在UI中的DataContext的任何改變,而且對UI的改變都被推回到DataContext中。
所以你是對的:)
相關問題
- 1. WPF究竟是什麼?
- 2. 什麼是ASP.NET中的雙向(雙向)數據綁定?
- 3. 字符數據究竟是什麼?
- 4. 動態數據究竟是什麼?
- 5. 數據庫模式究竟是什麼?
- 6. 究竟是MySQL中的「尾隨空間」究竟是什麼?
- 7. 爲什麼雙向數據綁定在WPF中不起作用?
- 8. PHP中遲到的靜態綁定究竟是什麼?
- 9. 「句柄」究竟是什麼?
- 10. getGlobalVisibleRect()究竟是什麼?
- 11. Werkzeug究竟是什麼?
- 12. 究竟是什麼@ ViewDebug.ExportedProperty?
- 13. .parentNode究竟是什麼?
- 14. Heroku究竟是什麼?
- 15. session_hash究竟是什麼?
- 16. 究竟是什麼awakeFromNib?
- 17. 究竟是什麼任務
- 18. cout/cin究竟是什麼?
- 19. SKEmitterNode particleLifetime究竟是什麼?
- 20. 代表究竟是什麼?
- 21. 究竟是什麼情景
- 22. 究竟是什麼php.ini memory_limit?
- 23. 資源究竟是什麼?
- 24. App Pool究竟是什麼?
- 25. Erlang OTP究竟是什麼?
- 26. NoSQL究竟是什麼?
- 27. 雅典究竟是什麼?
- 28. ContextStaticAttribute究竟是什麼?
- 29. 「OAuth Provider」究竟是什麼?
- 30. 究竟是什麼插座
很高興聽到我幾乎是正確的。另一個問題是,這是否意味着M-V-VM將在沒有WPF的情況下實現?就像WPF和M-V-VM一樣硬耦合?我問這是因爲,直到我沒有找到沒有WPF/SL的M-V-VM的實現。 – blntechie 2010-05-23 16:47:56
實際上,默認綁定類型取決於依賴項屬性。事實上,依賴項屬性的默認值是OneWay,但是一些WPF控件已經重寫了它們的一些屬性(比如TextBox.Text)的TwoWay。 – 2010-05-23 19:57:03
MVVM模式實際上是開發人員學習如何有效使用WPF非常強大且遍及全球的數據綁定技術的產物,因此您不可能在其他任何環境中運行該模式。 – 2010-05-23 20:02:18