Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Silverlight:设置属性是否直接删除数据绑定?_Silverlight_Data Binding_Propertychanged - Fatal编程技术网

Silverlight:设置属性是否直接删除数据绑定?

Silverlight:设置属性是否直接删除数据绑定?,silverlight,data-binding,propertychanged,Silverlight,Data Binding,Propertychanged,我正在修改一个Silverlight项目,该项目大量使用代码来设置属性等。这是几年前创建的,或多或少是从WinForms项目移植过来的 我注意到的问题是,当我为属性设置数据绑定时,如果该属性直接在代码中设置,那么数据绑定将被删除。我甚至在PropertyChanged事件上设置了断点,以验证情况是否如此 我已经做了相当多的WPF开发,从来没有注意到这一点。这是正常的,我错过了,还是有些不太对劲?对我来说似乎很正常 绑定背后的概念是目标属性上的值绑定到源对象上的属性。在受约束时,目标财产将始终反映

我正在修改一个Silverlight项目,该项目大量使用代码来设置属性等。这是几年前创建的,或多或少是从WinForms项目移植过来的

我注意到的问题是,当我为属性设置数据绑定时,如果该属性直接在代码中设置,那么数据绑定将被删除。我甚至在PropertyChanged事件上设置了断点,以验证情况是否如此


我已经做了相当多的WPF开发,从来没有注意到这一点。这是正常的,我错过了,还是有些不太对劲?

对我来说似乎很正常

绑定背后的概念是目标属性上的值绑定到源对象上的属性。在受约束时,目标财产将始终反映源财产的价值。一旦您将自己的值分配给目标属性,目标属性就不再反映源属性的值,您已经破坏了两者之间的绑定。因此,设置自己的值将删除绑定


但是,如果将绑定的
模式设置为
双向
,则Silverlight只需将新值分配给源对象上的属性,并维护绑定,因为目标属性仍然反映源属性的值。

您是对的,这是有意义的。我只是从来没有想过。我在试图弄明白为什么我的绑定不起作用时遇到了一些严重的问题。