x中的Nullable类型:TypeArguments

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

我有:

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

我需要Int32可以为空…类似于

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

这似乎是无效的XML / XAML。

我试图将其声明为sys:Nullabe<sys:Int32> 也是,错误是:

‘sys.Nullable’不是generics参数的有效类型名称引用

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

  

其中NullableControlBase是中间类:

 public class NullableInt32ControlBase : ControlBase { } 

这应该这样做:

 sys:Nullable`1[System.Int32] 

Intellisende和Resharper会对此提出错误,但它应该有效。