wpf中依赖属性为ObservableCollection时,怎么检测ObservableCollection集合的变化
wpf中依赖属性为ObservableCollection<T>时,如何检测ObservableCollection集合的变化?在线等
如题,比方说DependencyProperty CollectionProperty,它的类型是ObservableCollection<T>,
在注册的时候可以监听PropertyChanged,但是如何监听这个集合对象的变化?设置UpdateSourceTrigger为PropertyChanged,也不会相应啊,PropertyChangedCallback和CoerceValueCallback都没有相应,请问有什么好点的解决办法么?谢谢了!
------解决方案--------------------
不知道你要表达什么。。。。
你要干嘛?
如果你要达到集合里面的对象里面的属性变化显示在ui
那么你需要让你的对象实现INotifyPropertyChanged接口
这个是绑定的基本概念 仔细阅读下msdn的绑定章节
------解决方案--------------------
添加事件函数,不是对象
------解决方案--------------------
我们两个问题差不多,我是想在List<T>内成员的值变化时,触发一个事件,不知道怎么实现?卡了我好几天了
------解决方案--------------------
如果是使用集合ObservableCollection的话,数据是自动更新的;如果使用List集合,可以使用事件通知
public event PropertyChangedEventHandler PropertyChanged;
public List<T> GestureKey
{
get
{
return m_gestureKey;
}
set
{
if (value != m_gestureKey)
{
m_gestureKey = value;
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("GestureKey"));
}
}
}
如题,比方说DependencyProperty CollectionProperty,它的类型是ObservableCollection<T>,
在注册的时候可以监听PropertyChanged,但是如何监听这个集合对象的变化?设置UpdateSourceTrigger为PropertyChanged,也不会相应啊,PropertyChangedCallback和CoerceValueCallback都没有相应,请问有什么好点的解决办法么?谢谢了!
------解决方案--------------------
不知道你要表达什么。。。。
你要干嘛?
如果你要达到集合里面的对象里面的属性变化显示在ui
那么你需要让你的对象实现INotifyPropertyChanged接口
这个是绑定的基本概念 仔细阅读下msdn的绑定章节
------解决方案--------------------
添加事件函数,不是对象
------解决方案--------------------
我们两个问题差不多,我是想在List<T>内成员的值变化时,触发一个事件,不知道怎么实现?卡了我好几天了
------解决方案--------------------
如果是使用集合ObservableCollection的话,数据是自动更新的;如果使用List集合,可以使用事件通知
public event PropertyChangedEventHandler PropertyChanged;
public List<T> GestureKey
{
get
{
return m_gestureKey;
}
set
{
if (value != m_gestureKey)
{
m_gestureKey = value;
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("GestureKey"));
}
}
}