pascalabcnet/TestSuite/attributes3.pas
Ivan Bondarev 4817fd07e1 #2448
2021-02-21 11:40:39 +01:00

23 lines
534 B
ObjectPascal

uses
System.ComponentModel;
type
MyClassConverter = class (TypeConverter)
end;
MyClass = class
private
fMyField: MyClass;
public
[TypeConverterAttribute(typeof(MyClassConverter))]
property MyProperty: MyClass read fMyField write fMyField;
end;
begin
var o := new MyClass;
o.MyProperty := o;
var props := o.GetType().GetProperties();
var attrs := props[0].GetCustomAttributes(false);
assert((attrs[0] as TypeConverterAttribute).ConverterTypeName.IndexOf('MyClassConverter') <> -1);
end.