您的位置:首页 > 其它

WPF MultiBinding 给数据目标赋值后绑定无效的问题

2013-08-30 15:40 323 查看
近来用WPF制作做了一个IP控件的试验,IP数值通过TextBox输入(也可以定制0-254的输入),需要4个TextBox多路绑定至System.Net.IPAddress,如图前4个TextBox作为数值输入,多路绑定至IPAddress, 最后一个TextBox绑定了IPAddress,且依赖项属性IPAddressProperty 变化时会引发函数IPAddressChangedCallback,从而改变前4个TextBox。

前4个TextBox的多路绑定以TextBox为数据源,IPAddress为数据目标

后一个TextBox的绑定以IPAddress为数据源



结果如下:

1、改变前4个TextBox任意一个值都会引起最后一个TextBox的变化。

2、改变最后一个TextBox也会导致对应前4个TextBox的变化。

3、一旦改变了最后一个TextBox的数值,即更改了IPAddress,则前4个TextBox的绑定便会无效,即无法改变IPAddress。

4、在程序中主动设置IPAddress也会导致多路绑定无效,判定方法为多路绑定的转换函数不执行。

总结:多路绑定中改变数据目标后,会导致多路绑定无效。具体原因不明,请大牛指点。

代码:http://download.csdn.net/detail/chifuqi/6039159
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  WPF