2010-12-03 24 views
3

PropertyChangedEventHandler如何使用? 你能告诉我一个类的Initalize方法中的这一点代码是干什么的? 在我们正在开发的项目中有一个类有一个私有的Initialize方法。我想讨论一下这个方法中的一些代码。
但首先,让我描述一下这个课程。这个类被定义为这样的: 公共类Skoobie:BaseThingy,ISkoobiePropertyChangedEventHandler如何使用?

所以,这意味着类“Skoobie”有两个它继承的父母。对此有什么影响?

无论如何,所以Initalize方法是这样的:

private void Initialize() 
{ 
      this.PropertyChanged += (o, e) => 
       { 
        If (e != null) 
        { 
         // some stuff is done 
        } 

       }; 
} 

现在“的PropertyChanged”是这样定义的父类“BaseThingy”中的一员:

公共事件PropertyChangedEventHandler的PropertyChanged; 什么是代码this.PropertyChanged + =(o,e)=> ...所有关于?这是一个LINQ的东西吗?

回答

4

这是一个正在添加到PropertyChanged事件中的lambda表达式(http://msdn.microsoft.com/en-us/library/bb397687.aspx)。
此事件在INotifyPropertyChanged接口中定义:http://msdn.microsoft.com/en-us/library/system.componentmodel.inotifypropertychanged.aspx
此事件对于WPF/Silverlight中的数据绑定等事件很重要。您可以自己使用它来将数据对象设置为脏。希望这可以帮助。

另外对于公共类Skoobie:BaseThingy,ISkoobie C#没有多重继承。你可以实现多个接口(在你的情况下,ISkoobie是一个接口,BaseThingy是基类)

+0

非常好。谢谢。 – xarzu 2010-12-03 07:45:42

相关问题