新添加的DataField属性问题

cousin_2245 2013-04-19 11:16:22
我新建了一个组件(datatree),需要绑定两个数据字段。

我定义了一个datasource 属性
一个datafield 属性
一个namedatafield 属性
两个datafield 使用同一个datasource

在设计期间,往form里添加datatree组件后,在属性栏里datafield属性有下拉列表选择字段,而namedatafield就没有下拉列表只能手动输入,请问有什么办法没有呢?

谢谢!!
...全文
340 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
缘中人 2013-04-23
  • 打赏
  • 举报
回复
找到原因了,类似这样注册属性编辑器,第一个参数TypeInfo的写法如下,不能用AnsiStringTypeInfo的写法了
           
PTypeInfo TypeInfo;
PPropInfo PropInfo = GetPropInfo(__typeinfo(TmyEdit1), "ResultField");
   if (PropInfo)
     TypeInfo = *(PropInfo->PropType);
RegisterPropertyEditor(TypeInfo,__classid( TmyEdit1),"ResultField",__classid( TListFieldProperty));
cousin_2245 2013-04-20
  • 打赏
  • 举报
回复
引用 1 楼 ksrsoft 的回复:
因为所有符合Datasource,DataField的属性规范的都自动可以了。如果你把上述控件中的名字改了, 注释掉的部分,DataField改为ResultField你就不能自动下拉了,就只能输入字符串(其实还是有属性编辑器的,至少是字符串嘛),这就需要自己编写属性编辑器,且注册给自己的控件 http://www.th7.cn/Article/bc/de/200……
谢谢 ksrsoft 的指点,但delphi 代码不通,请问有c++ 的么?
缘中人 2013-04-19
  • 打赏
  • 举报
回复
因为所有符合Datasource,DataField的属性规范的都自动可以了。如果你把上述控件中的名字改了, 注释掉的部分,DataField改为ResultField你就不能自动下拉了,就只能输入字符串(其实还是有属性编辑器的,至少是字符串嘛),这就需要自己编写属性编辑器,且注册给自己的控件 http://www.th7.cn/Article/bc/de/200702/11840.html

604

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder VCL组件使用和开发
社区管理员
  • VCL组件使用和开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧