【发布时间】:2012-06-23 04:36:34
【问题描述】:
我创建了一个自定义的GridView(实际上是一个RadGrid),它大致执行以下操作。
- 初始化 GridView 格式
- 设置列(取决于要显示的数据类型)
- 填充行
当实例化此GridView 并将其添加到我的页面时,我希望第一列包含重复但相似数据的第一行的“rowspan”属性。 “rowspan”值应该等于它后面的相似行数。我希望通过这种方式使最终的视图更干净。
我认为,这个逻辑应该在填充行时发生。最初,我将行添加到 DataTable,然后将其绑定到 GridView 作为最后一步。
这是我尝试的一般逻辑,但它对我不起作用。我做错了什么?
Dim dt As New DataTable() 'Has three default columns
For Each d In Documents 'MAIN ITEM (First Column Data)
Dim rowspan As Integer
rowspan = 0
For Each f In Files
If rowspan = 0 Then
Me.dt.Rows.Add(New Object() {d.Title, f.Language, f.FileSize})
'THIS DOESN'T WORK!
Me.dt.Columns(0).ExtendedProperties.Item("rowspan") = rowspan.ToString()
Else
Me.dt.Rows.Add(New Object() {Nothing, f.Language, f.FileSize})
End If
rowspan += 1
Next
Next
还请记住,这被转储到按第一列排序的DataView 中,所以我想它实际上必须先排序,然后以某种方式计算每个“喜欢”第一列的行数,然后将该列的第一行的“rowspan”值设置为等于属于它的行数。
这有意义吗?这是我想在布局中完成的ideal example:
【问题讨论】:
标签: vb.net gridview dataview sorted html-table