XamlMember.TypeConverter 属性

定义

获取一个 XamlValueConverter<TConverterBase> 对象,该对象可用于 XAML 声明的对象的类型转换构造。

public:
 property System::Xaml::Schema::XamlValueConverter<System::ComponentModel::TypeConverter ^> ^ TypeConverter { System::Xaml::Schema::XamlValueConverter<System::ComponentModel::TypeConverter ^> ^ get(); };
public System.Xaml.Schema.XamlValueConverter<System.ComponentModel.TypeConverter> TypeConverter { get; }
member this.TypeConverter : System.Xaml.Schema.XamlValueConverter<System.ComponentModel.TypeConverter>
Public ReadOnly Property TypeConverter As XamlValueConverter(Of TypeConverter)

属性值

XamlValueConverter<TypeConverter>

一个对泛型具有 XamlValueConverter<TConverterBase> 约束的 TypeConverter 值。

注解

调用 TypeConverter 调用 LookupTypeConverter 或该方法的特定重写。 当初始内部反射逻辑尚未设置信息时,会发生此行为。

返回非 null 属性值的 TypeConverter 实现不一定是正常工作 TypeConverter的。 下面是可能的非 null 返回值 TypeConverter 的列表,以及这些值表示的内容:

  • 返回值将报告一个类型转换器,该转换器专门归因于该成员或更通常的转换器的目标类型。 此行为通常是大多数 XAML 类型系统和 XAML 处理器查找的内容,以便实例化类型转换器并调用其方法。

  • 返回值报告内置值转换器。 这些转换器适用于 XAML 编写器执行的某些内部操作。 具体而言,这些内置值转换器会将原始属性值转换为 XAML 语言级基元。 对于.NET Framework XAML Services 实现,这些内置类型转换通常转发到系统程序集中定义的类型转换器。 例如,值的 Int32 转换具有内置的转发转换,因此, ConverterType 值引用 Int32Converter

  • 返回值报告不受约束的对象模型的特殊情况:也就是说,其XamlMemberType值为 Object. 在本例中 XamlValueConverter<TConverterBase> ,报告为 XamlValueConverter<TConverterBase>.Name {Object}。 但是, ConverterInstance 由于 null 没有实际类型或实例可用于执行此转换。 相反,当特定技术的运行时确定其对象图的处理之前,无法确定对象模型行为。

如果可从中访问工作TypeConverterConverterInstance,则可以调用其转换方法。 但是,许多转换方法依赖于服务上下文。 如果你没有与类型转换器预期的服务上下文相同的服务上下文,其典型角色为对象图编写对象,转换器方法可能会引发异常。

适用于