databinding ObservableCollection易错之一:重新New一个新地址,不会自动通知UI

本文探讨了在使用Databinding时,ObservableCollection重新实例化不会自动通知UI的问题。通过示例代码解释了UI未更新的原因,并提出了解决方案,即在设置新的ObservableCollection时触发属性更改通知。
摘要由CSDN通过智能技术生成

    刚用Databinding的同学会经常有各种各样失败的原因。最近在对Databinding对Collection做绑定的时候,犯了一个错误,感觉挺常见的,分享记录下:很多初学者大概以为ObservableCollection<>  任何改变的消息都会发一个事件告诉UI,但实际上是对ObservableCollection<>重新new一个地址,它并不会把新New 的地址发消息告诉UI,UI记录的source target的地址依然是之前的,除非你自己发消息告诉UI。

     用一个简单的Databinding的例子说明,如下:

    在UI 的ListBox绑定显示一个ObservableCollection<>,当点击了testButton后,在后台修改数据并显示。

 

点击testButton后

具体代码:

In XAML:

<UserControl x:Class="DataBindingReference.MainPage"

xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

xmlns:d="http://schemas.m

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值