Laz*_*sen 3 c# nullreferenceexception
据我所知,null条件运算符(?.)在运行下一位代码之前检查null,但在此代码中:
public delegate void EventArgs(object Sender, PlayerPage Page);
public event EventArgs PageChanged;
private PlayerPage _CurrentPage = PlayerPage.NoPage;
public PlayerPage CurrentPage
{
get { return _CurrentPage; }
set { _CurrentPage = value; PropertyChangedFire(); this?.PageChanged(this,value); }
}
Run Code Online (Sandbox Code Playgroud)
但是这个?.PageChanged(this,value); 抛出空引用异常
编辑:
哦......我多么愚蠢:)改为PageChanged?.Invoke(); 感谢您及时的回复
Jon*_*lis 12
您需要检查是否PageChanged为null.然后你可以召唤Invoke它来举起活动.
PageChanged?.Invoke(this,value);
Run Code Online (Sandbox Code Playgroud)
附注:这正是Resharper为C#6推荐的内容
| 归档时间: |
|
| 查看次数: |
201 次 |
| 最近记录: |