自定义控件DataSource属性的问题

susdj 2006-03-09 12:12:27
我的自定义控件有一个DataSource属性
在SetDataSource中把DataSource的数据集取出显示在列表.
在设计阶段把DataSource1给予DataSource属性时数据会正常显示,但是运行时却不显示.
单步调试发现DataSource1给予DataSource属性时DataSource1的数据集还没有打开,
而TDBGrid是在DataSource1的数据集打开后再把DataSource1给予属性DataSource.
如何做才能使DataSource1的数据集打开后再设置DataSource属性?
...全文
158 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
susdj 2006-06-13
  • 打赏
  • 举报
回复
牛人不在了...
搞软件的人越来越少了
susdj 2006-06-12
  • 打赏
  • 举报
回复
老大难问题,高手帮帮忙!
TMyControl = class(TListBox)
private
FDataSource :TDataSource;
...
property
DataSource :TDataSource read GetDataSource write SetDataSource;
end
设计阶段为DataSource赋值控件立刻显示记录内容,运行程序,控件不会显示记录,必须在程序中加
MyControl1.DataSource := DataSource1;才能显示内容。
为什么Delphi中的TDBGrid,TDBListBox在程序运行时可以显示出和设计时一样的数据?
gflpower 2006-03-09
  • 打赏
  • 举报
回复

设置 Write 属性是

时间过程来做

procedure SetDataset(var ds:Tdataset )
begin
Fdataset.assign(ds);
end;
susdj 2006-03-09
  • 打赏
  • 举报
回复
我是直接指向的,问题是DataSource1的DataSet还没有打开就附值给DataSource属性了
gflpower 2006-03-09
  • 打赏
  • 举报
回复
直接指向也可以

susdj 2006-03-09
  • 打赏
  • 举报
回复
不明白楼上的意思.
而且assign会耗费内存吧

5,927

社区成员

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

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