gpt4 book ai didi

Silverlight:将动态数据绑定(bind)到 DataGrid

转载 作者:行者123 更新时间:2023-12-04 06:46:15 25 4
gpt4 key购买 nike

最近遇到一个问题,希望大家帮忙。

我的任务是创建一个可以采用任何 DataSet 的应用程序,并将其显示在一系列网格中(使用类似于选项卡控件的东西)。

我能够在 WPF 中很容易地做到这一点:
1.创建一个返回DataSet对象的WCF Service
2. 创建一个带有 DataGrid 的 WPF 窗口
3. 使用 AutoGenerateColumns=True 将 DataSet 的 DataTables 绑定(bind)到 WPF DataGrids

现在我被要求在 Silverlight 中执行此操作。所以本质上,我不知道我得到的表会是什么样子,所以我不能创建一个具有可以被扔进集合和绑定(bind)的属性的类。 Silverlight 将不允许数据集。

我觉得这对于任何平台来说都应该是一个相当普遍的需求,有没有一种方法可以处理这个不需要大量的编码来解决这些限制?

最佳答案

一种解决方案是将 DataSet Column Information 和 DataSet XML 传递给 silverlight。在 Silverlight 端,使用 System.Reflection.Emit 命名空间提供的函数基于这些数据构建动态数据对象。然后将动态构建的DataObject 的List 绑定(bind)到DataGrid。对于 DataSet 中具有相同 DataType 的每一列,动态数据对象将具有一个属性。

因为我们除了 Data 之外还有 Column Information,绑定(bind)到 DataGrid 可以非常灵活。您可以设置 AutoGeneratedColumn = true 以便它显示 DataSet 中的所有数据,或者我可以动态生成我想要显示的列。

您可以从 下载示例源代码here

关于Silverlight:将动态数据绑定(bind)到 DataGrid,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3736708/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com