x中的Nullable类型:TypeArguments

时间:2015-12-23 08:36:25

标签: c# wpf xaml

是否可以将可空类型传递给XAML泛型类型参数(x:TypeArguments)?

我有:

 <base:ControlBase
  x:TypeArguments="sys:Int32"
  ...

我需要Int32可以为空...类似

<base:ControlBase
  x:TypeArguments="sys:Nullable<sys:Int32>"
 ...

这似乎是无效的XML / XAML。

我也尝试将其声明为sys:Nullabe&lt;sys:Int32&gt;,错误是:

  

&#39; sys.Nullable&#39;不是泛型参数

的有效类型名称引用

2 个答案:

答案 0 :(得分:3)

不,不幸的是,这是不可能的。你需要创建一个中间类来克服这个问题(我已经尝试了所有可能的方法,它只是不起作用)。

<base:NullableInt32ControlBase ... >

NullableControlBase是中间类:

public class NullableInt32ControlBase : ControlBase<int?>
{ }

答案 1 :(得分:0)

这应该做到:

--format="csv[separator=', '](timestamp,jsonPayload.message)"
  

Intellisende和Resharper会给您一个错误,但是应该可以。