解释一下代码,不懂,尤其这个PropertyChanged(this, new PropertyChangedEventArgs(property));

孙大鹏-迷茫中坚持着 2011-12-06 02:31:12
private string cityPinyin;//城市拼音
public string CityPinyin
{
get
{
return cityPinyin;
}
set
{
if (value != cityPinyin)
{
cityPinyin = value;
NotifyPropertyChanged("CityPinyin");
}
}
}

public event PropertyChangedEventHandler PropertyChanged;

private void NotifyPropertyChanged(string property)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(property));
}
}
...全文
315 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Daqing 2011-12-06
  • 打赏
  • 举报
回复
你这个是用于安全验证的,首先要继承安全验证接口,其实是一个规范。

抛开那些不说,这个是一个委托delegate。
调用这个NotifyPropertyChanged这个方法就会触发PropertyChanged事件,
PropertyChanged(this, new PropertyChangedEventArgs(property)); //方法中已经注册。

if (value != cityPinyin)
{
cityPinyin = value;
NotifyPropertyChanged("CityPinyin");
} 不满足这个条件时,执行。
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 taomanman 的回复:]
参数this,是指对象本身,PropertyChangedEventArgs是事件参数,继承自EventArgs

这段代码的意思是调用一个事件.
所谓事件实际是Delegate委托.
最常见的Delegate委托.是Button.Click事件.
private void button1_Click(object sender, EventArgs e)
{}
button1_C……
[/Quote]
参数列表不是在声明的时候就确定了吗
阿非 2011-12-06
  • 打赏
  • 举报
回复
事件通知机制

在属性被更改的时候触发
暖枫无敌 2011-12-06
  • 打赏
  • 举报
回复
参数this,是指对象本身,PropertyChangedEventArgs是事件参数,继承自EventArgs

这段代码的意思是调用一个事件.
所谓事件实际是Delegate委托.
最常见的Delegate委托.是Button.Click事件.
private void button1_Click(object sender, EventArgs e)
{}
button1_Click(this, new EventArgs());
这个事件与你提到的本质一样.

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧