0

我有一个看起来如下的结构

Class TreeNode  {
    public TreeNode Parent { get; }
    public IEnumerable<TreeNode> Children { get; }
    public . . . . 
}

我想将它绑定到一个 asp.net telerik radgrid,其中包含每个级别的孩子的详细信息表。我知道 radgrid 支持声明性绑定到使用数据源控件的自引用层次结构,但假设您有一个平面数据集(例如来自数据库)并且可以查看某种父键字段。我的问题是以前有没有人将 radgrid 绑定到这样的数据结构,有没有办法以声明方式或主要以声明方式进行?

4

2 回答 2

0

我无法直接回答您的问题,因为我没有使用 Telerik 网格的经验,但我可以提供解决方法。

向您的类添加一个方法,将其内容展平为一个自引用表,如您提到的结构。这样,您仍然可以使用该类及其更高级的结构,但仍可以以符合 UI 组件期望的可消费形式输出内容。

这也是扩展方法的一个很好的候选者。

于 2009-12-10T11:28:02.880 回答
0

我能想到的另一种可能的方法是通过在 DetailTableDataBind 网格处理程序中根据父表过滤子表的日期来动态构建层次结构。这个演示是一个很好的参考:

http://demos.telerik.com/aspnet-ajax/grid/examples/programming/detailtabledatabind/defaultcs.aspx

但我必须同意斯蒂芬的建议可能更方便。

迪克

于 2009-12-10T18:24:48.903 回答