我欢迎 Embarcaderos 努力使 TListView 更加动态化,并且很高兴看到 Sarina Duponts 的帖子在这里您可以将 imageindex 链接到 LiveBindings Designer 中的 TListView 属性,甚至在使用 DynamicAppearance 时将 image 属性链接到数据字段(整数)和TImageObject 外观。
但是……我试过了,而且几乎成功了。
在我的挑战中,我有一个应用程序,我使用带有 TREST* 函数的 TFDMemTable 来填充 TFDMemTable。如果我不使用 DynamicAppearance 并使用 ImageListItem 并使用 LiveBindings Designer 将我想要使用的数据字段链接到 TListView 中的 imageindex 属性,那么一切都很好。
尽管使用 DynamicApperance,没有可链接的 imageindex 属性,但 Sarina Dupont 在此处的帖子中说,您可以将整数字段直接链接到 image 属性(IDE/编译器会弄清楚)。
嗯......我想出了以下几点:我的数据字段(从 TREST* 和 TFDMemTable 生成)不一定是它们看起来的样子。由于我使用的是 REST/JSON,因此字段类型被“匿名化”为 WideString,实际上 FieldDefs->'dataitem'->DataType 设置为“ftWideString”。我试图将此值更改为 ftInteger,希望这会有所帮助,但我确实收到了以下错误消息:“FDMemtTable1:'datafield' 的字段类型不匹配,预期:WideString 实际:整数”。
所以...我快到了,我真的很想使用 DynamicAppearance 并查看每个 TListViewItem 的多个图像和文本字段...
...或者更容易动态地制作 ListViewItem 'Template' 并用数据填充它,最好的方法是什么?