【发布时间】:2016-01-09 22:17:24
【问题描述】:
WPF 绑定表达式语法是否具有空值检查机制?例如 My TextBox 显示 People 对象数组的第一个元素的 Address 字段,如下所示:
Text="{Binding AllPeople[0].Address}"
AllPeople 有时本身可以为 null。这不会导致任何异常,但 WPF 在即时窗口中静默记录绑定错误消息。有没有办法通过在 Path 表达式中指定空安全性来避免这种情况? AllPeople?[0].Address 上的东西。
注意:我知道这可以使用转换器轻松完成。我正在寻找一种速记符号。
【问题讨论】:
-
你可以尝试定义你的类的一些空(空)实例,使用它而不是空。就像所谓的Null Object Pattern。这可能是某种矫枉过正。这里检查null的目的可能是在null时显示一些自定义字符串,所以我认为使用Converter是相当标准的。
标签: wpf xaml binding nullreferenceexception