我创建了一个自定义GridView
(实际上是 a RadGrid
),它大致执行以下操作。
- 初始化 GridView 格式
- 设置列(取决于要显示的数据类型)
- 填充行
实例化 thisGridView
并将其添加到我的页面时,我希望第一列在第一行重复但相似的数据上包含“rowspan”属性。“rowspan”值应该等于它后面的相似行数。通过这种方式,我希望使最终视图更清晰。
我认为,这个逻辑应该在填充行时发生。最初我将行添加到 aDataTable
然后将其绑定到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
按第一列排序的 a 中,所以我想它实际上必须先排序,然后以某种方式计算每个“like”第一列的行数,然后设置“rowspan”值该列的第一行等于属于它的行数。
这有意义吗?这是我想在布局中完成的理想示例: