加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 在不添加私有变量的情况下引发propertychanged事件

发布时间:2020-12-15 18:12:42 所属栏目:百科 来源:网络整理
导读:我有一个看起来像这样的房产. public int NumberOfElephants { get; set; } 此属性在一个observablecollection中,它必须通知另一个属性它已更改. 我该怎么办? public int NumberOfElephants { get; set { OnPropertyChanged("totalAnimals"); } 没有代码需
我有一个看起来像这样的房产.
public int NumberOfElephants { get; set; }

此属性在一个observablecollection中,它必须通知另一个属性它已更改.

我该怎么办?

public int NumberOfElephants { get; set { OnPropertyChanged("totalAnimals"); }

没有代码需要像这样

private int _numberOfElephants;
public int NumberOfElephants { 
    get { 
        return _numberOfElephants; 
    } 

    set { 
        _numberOfElephants = value; 
        OnPropertyChanged("totalAnimals"); 
    } 
}

解决方法

你没有.你不能.

自动实现的属性仅在属性微不足道时才起作用 – 当get / set超出“返回变量的值”或“设置变量的值”时,不需要代码.你可以通过重新格式化来缩短它…当然……我写的是:

private int numberOfElephants;
public int NumberOfElephants {
    get { return numberOfElephants; }

    set {
        _numberOfElephants = value; 
        OnPropertyChanged("totalAnimals"); 
    } 
}

实际上,我会在套装的开始和房产的开始使用“自行打开支架”,但我保留了你喜欢的款式.但是在单行上使用“单表达式获取/设置实现”可以使具有大量属性的类更加清晰.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读