By default each row of a Gridview maps to each row in a datatable or dataset attached to its datasource. But what if I want to display these rows in multiple columns. For example if it has 10 rows, 5 rows each should be displayed in 2 columns side by side. Also can I do this with the Infragistics grid. Is this possible?
You can use a DataList
control instead. It has a RepeatColumns
property that you can define the number of columns you want to display.
In .NET Framework 3.5, there is an even better solution, the ListView
control. You can find further information about how to use the ListView control here.
If this is a pure coding exercise, then bind to the RowDataBound event of the Gridview. That way, you can do:
e.Row.Cells(2).Text = e.Row.Cells(1).Text
This would place the text from column 1 in column 2 after it has been pulled from the database. You can also dynamically create columns using a similar method.
Re-reading, I think I misunderstand your problem though.
Can't you just put two identical bound columns one after the other?
来源:https://stackoverflow.com/questions/19790/display-rows-in-multiple-columns-in-asp-net-gridview