我正在分析DBGrids.pas
单位。有一个TColumn
类已发布FieldName
属性
property FieldName: String read FFieldName write SetFieldName;
它被声明为字符串,但在对象检查器中它显示为可编辑的组合框(TDataFieldProperty
)
我分析了几乎所有的DBGrids
单位,但找不到该技巧的地方。我应该在哪里看?
答案 0 :(得分:1)
你正在寻找什么 - 亲爱的过去 - 是RegisterPropertyEditor方法。
调用RegisterPropertyEditor以关联属性编辑器类 由EditorClass参数指定的属性类型 由PropertyType参数指定。
在你的情况下,你需要一个TDataFieldProperty,它就像:
RegisterPropertyEditor(TypeInfo(string), TColumn, 'FieldName', TDataFieldProperty);