【发布时间】:2011-03-29 19:25:03
【问题描述】:
我有一个win应用项目,应该在delphi2010中完成。
应该生成如下图的形式:
www.up.iranblog.com/Files2/1e867ce0de784c469496.jpg
首先是产品图片,然后是名称和价格。
应该从xml文件中读取信息,但不知道如何在dbctrlgrid中显示信息?
请帮忙
提前感谢
【问题讨论】:
我有一个win应用项目,应该在delphi2010中完成。
应该生成如下图的形式:
www.up.iranblog.com/Files2/1e867ce0de784c469496.jpg
首先是产品图片,然后是名称和价格。
应该从xml文件中读取信息,但不知道如何在dbctrlgrid中显示信息?
请帮忙
提前感谢
【问题讨论】:
对于DBCtrlGrid,它就像一个普通的面板控件。不同之处在于,它为数据集中的每条记录创建此面板。所以你应该把你的数据感知或普通控件放在你喜欢的面板中,你的面板将自动重复数据集中的每条记录,如果你面板上的控件是数据感知的,那么它们将接收到的数据每个对应记录的连接字段。您可以查看 Delphi 帮助中的 DBCtrlGrid 条目以获取更多信息。
如果您想使用 DBCtrlGrid 来呈现您的 XML 数据,那么您应该首先将您的 XML 数据呈现为数据库记录。为此,您应该首先使用XML Mapper 工具创建一个XML 转换文件。之后,您可以使用XMLTransformProvider 控件,并将其连接到您的转换文件和您的XML 数据。 XMLTransformProvider 会使用提供的转换文件将您的 XML 数据转换为数据库记录。
现在您可以将ClientDataset 连接到您的 XMLTransformProvider,您的 XML 数据将作为数据库记录在您的 ClientDataset 中可用。您可以将DataSource 连接到您的ClientDataset,并将您的DBCtrlGrid 连接到该数据源,这样您的DBCtrlGrid 控件就会显示ClientDataset 中可用的数据。
所以数据流是这样的:
XML 数据--(转换为数据库记录)--> 数据提供者--> 客户端数据集--> 数据源--> 数据感知控件(例如 DBCtrlGrid)。
P.S. 从您提供的链接来看,您似乎位于伊朗。无法从位于伊朗的 IP 访问包含的链接,因此无法加载网页。您可以从 Delphi 安装的帮助文件中阅读相同的文档。只需将每个组件拖放到表单上,然后按 F1。
【讨论】: