我有几个页面,每个页面都有一个名为Data
的属性。在另一页我设置这个数据是这样的:在任务的左侧使用空条件运算符
if (MyPage1 != null)
MyPage1.Data = this.data;
if (MyPage2 != null)
MyPage2.Data = this.data;
if (MyPage3 != null)
MyPage3.Data = this.data;
是否有可能使用空条件操作上MyPage
?我想的是这样的:
MyPage?.Data = this.data;
但是,当我把它写这样的,我得到以下错误:
The left-hand side of an assignment must be a variable, property or indexer.
我知道这是因为MyPage
可能是零和左手方面不会再是变数。
这不是我不能像我已经使用它,但我只是想知道是否有任何可能使用这个空条件运算符。
您应该能够创建一个'SetData'方法并执行'MyPage1?.SetData(this.data);' –
可能的重复[Why C#6。0在使用Null传播运算符时不允许设置非空的可空结构的属性?](http://stackoverflow.com/questions/31035022/why-c-sharp-6-0-doesnt-let-to -set-properties-of-a-non-null-nullable-struct-when) –
空传播/条件运算符用于访问属性,不设置它们。因此你不能使用它。 –