我正在使用需要获取类型列表的值转换器,这是转换器的属性。如果我要使用双值列表,我可以使用以下语法(按预期工作):
代码
public class MyConverter : IValueConverter
{
public List<double> MyList { get; set; }
// ...
}
XAML
<Converter:MyConverter x:Key="MyConverter">
<Converter:MyConverter.MyList>
<System.Double>1</System.Double>
<System.Double>2</System.Double>
</Converter:MyConverter.MyList>
</Converter:MyConverter>
但是,如果我尝试将此方法与类型列表一起使用,则会引发异常:
Object of type 'System.RuntimeType' cannot be converted to type 'System.Collections.Generic.List`1[System.Type]'
这是我的转换器及其用法:
代码
public class MyConverter : IValueConverter
{
public List<Type> MyList { get; set; }
// ...
}
XAML
<Converter:MyConverter x:Key="MyConverter">
<Converter:MyConverter.MyList>
<x:Type TypeName="MyType1" />
<x:Type TypeName="MyType2" />
</Converter:MyConverter.MyList>
</Converter:MyConverter>
我猜 XAML 语法是错误的,但我找不到正确的语法。