Delphi 首次使用TListView和TTreeView不会显示数据
我的应用程序中只有一个表单,我在其中插入了一个框架,以相应地执行用户操作 此表单插入到TScrollBox中,因为它的宽度有时大于屏幕/窗口 我在框架上有一个或多个tListView,还有许多TEDIT 运行应用程序并打开任何帧时,一个或多个TListView未填充。通过调试,我看到数据是从SQL中提取的。TEDIT已填写完毕。移动SQL游标会相应地更新所有TEDIT 关闭此帧并再次打开(或任何其他),然后开始在TListView上显示数据 我没有发现任何有意义的关联。显然缺少某种初始化。并非所有的TListView都是空的,在一些帧中,我有4或5个,其中2个显示数据,其他的是空的 编辑:我已经更改了这个问题的标题,因为我注意到这个问题似乎与LiveBindings没有主要关系,但似乎与其他列表上TListView的某种初始化有关 我做了一个新的测试,发现TTreeView也有同样的问题,只在第一次显示完全无序的数据。如果我之前打开了其他东西,它工作正常,如果我用TTreeview关闭并打开框架,第二次就可以了 在这张图中,我显示了TreeView混乱:Delphi 首次使用TListView和TTreeView不会显示数据,delphi,firemonkey,delphi-xe6,Delphi,Firemonkey,Delphi Xe6,我的应用程序中只有一个表单,我在其中插入了一个框架,以相应地执行用户操作 此表单插入到TScrollBox中,因为它的宽度有时大于屏幕/窗口 我在框架上有一个或多个tListView,还有许多TEDIT 运行应用程序并打开任何帧时,一个或多个TListView未填充。通过调试,我看到数据是从SQL中提取的。TEDIT已填写完毕。移动SQL游标会相应地更新所有TEDIT 关闭此帧并再次打开(或任何其他),然后开始在TListView上显示数据 我没有发现任何有意义的关联。显然缺少某种初始化。并非所
它不应该有所有的空间和一些节点重叠 我的应用程序只有一个表单,所有内容都是作为TScrollBox父级创建的帧 使用Delphi XE5时,TScrollBox的问题很多,我不得不升级到XE6 很多东西都是从XE6开始工作的,但是TScrollBox仍然有一个小问题: 在插入帧并将其作为滚动的父对象后,需要调用ApplyStyleLookup进行初始化。这使得TListView和TTreeView从第一次开始就可以正常工作
constructor TFrameBase.Create(AOwner: TComponent);
begin
inherited;
Align := TAlignLayout.Left;
Parent := AOwner as TFmxObject;
if (AOwner is TScrollBox) then
(AOwner as TScrollBox).ApplyStyleLookup;
end;
这是我的框架构造器。这解决了所有问题。为了获得帮助,我们需要能够诊断问题。这需要你提供更多的信息。“MCVE怎么样?”大卫·费弗南我无法成功地为自己创建MCVE。我希望有人有同样的经验,并找到了解决方案,并希望与大家分享。有许多控件、表和livebinding。我还不能孤立。但由于Firemonkey过去充满了这些讨厌的虫子,我想问一下。没有什么比一天开始时投反对票更重要的了:)