使用XAML定义的泛型类

时间:2013-10-26 23:32:20

标签: c# class xaml generics

有很多关于如何使用泛型基础类型在XAML中定义类的示例。你会做类似的事情:

<local:A
            x:Class="B"
            x:TypeArguments="local:Foo"
<local:A/>
-----------------
public class B : A<Foo> { }

但是如果我想让 A类泛型呢?类似的东西:

<local:A
            x:Class="B"
            x:TypeArguments="T" // Compiler error: "The type "T" was not found"
<local:A/>
-----------------
public class B<T> : A<T> { }

这在XAML中根本不可能吗?

1 个答案:

答案 0 :(得分:0)

AFAIK你没有在XAML中定义类,你只是创建已经定义的类的实例,所以在你写的时候

<local:A
        x:Class="B"
        x:TypeArguments="local:Foo"
<local:A/>

您正在创建A传递Foo的实例作为类型参数,并且在实例化GenericType时您无法传递T.

在创建新的通用列表时,请考虑这样,可以编写new List<T>()