zoukankan      html  css  js  c++  java
  • Binding模式

    OneWay 源更新时,目标也更新
    TwoWay 源更新时目标也更新,或者目标更新时同时更新源
    OneTime 仅当应用程序启动时或 DataContext 进行更改时更新目标属性。绑一次就不更维护更新,目标相当于源的一次性镜像
    OneWayToSource 目标更新时更新源,和OneWay相反

    大部分WPF自带的控件的dependency property默认的是OneWay,像TextBox.Text默认的是TwoWay。
    值得注意的事,只读属性只能设置成OneWay,不能是TwoWay,否则运行时异常。

    对于 OneWay 或 TwoWay 绑定,对源的动态更改不会自动传播到目标。必须在源对象上实现 INotifyPropertyChanged 接口。 
    对于 TwoWay 绑定,对目标的更改不会自动传播到源,除非绑定目标是 Text 属性。在这种情况下,更新仅在 TextBox 失去焦点时发生。 
    对于 OneTime 和 OneWay 绑定,对 SetValue 的调用会自动更改目标值并删除绑定。

    再次提醒,源要实现了INotifyPropertyChanged 接口才能把改变反映到目标上。

    OneWayToSource 用于多个目标更改一个源的情况,可以想像成多人录入。或者用来实现源和目标倒置的情况。

  • 相关阅读:
    zoj 1239 Hanoi Tower Troubles Again!
    zoj 1221 Risk
    uva 10192 Vacation
    uva 10066 The Twin Towers
    uva 531 Compromise
    uva 103 Stacking Boxes
    稳定婚姻模型
    Ants UVA
    Golden Tiger Claw UVA
    关于upper、lower bound 的探讨
  • 原文地址:https://www.cnblogs.com/kelei12399/p/2582313.html
Copyright © 2011-2022 走看看