如何在 xaml 元素中指定 null(例如,在传递给可为空类型的集合时)



我有一个我写的WPF IValueConverter。我计划在许多地方使用它。它有一个公共属性,该属性是可为空的 DateTume 的集合。即列表例如

private List<DateTime?> _dates = new List<DateTime?>();
public List<DateTime?> Dates 
{ 
  get { return _dates; }
  set { _dates = value; }
}

如何在 XAML 中向其传递一组值,包括 null 值?

我的尝试是

<myns:MyConverter x:key="MyName">
  <myns:MyConverter.Dates>
    <sys:DateTime>1 Jan 2014</sys:DateTime> <!-- this works -->
    <sys:DateTime /> <!-- unf this comes through as 1 Jan 0001 -->
    <sys:DateTime? /> <!-- invalid syntax with the ? character -->
  </myns:MyConverter.Dates>
</myns:MyConverter>
您可以将

<x:Null/>添加到Dates列表中:

<myns:MyConverter x:key="MyName">
    <myns:MyConverter.Dates>
        <sys:DateTime>1 Jan 2014</sys:DateTime>
        <x:Null/>
        <sys:DateTime>2 Jan 2014</sys:DateTime>
    </myns:MyConverter.Dates>
</myns:MyConverter>

可以在 XAML 代码中使用: {x:Null} 表示 null 在 XAML 代码中

相关内容

  • 没有找到相关文章

最新更新