C# DataGridView行列转换的具体实现
爱编码的波哥 人气:0初始表格
需要进行行列转置 转换后的效果
实现代码如下
void InitTable() { var dataTable = new DataTable(); dataTable.Columns.Add("姓名"); dataTable.Columns.Add("年龄"); dataTable.Columns.Add("地址"); dataTable.Rows.Add("用户1", "1岁", "住址1"); dataTable.Rows.Add("用户2", "2岁", "住址2"); dataTable.Rows.Add("用户3", "3岁", "住址3"); dataTable.Rows.Add("用户4", "4岁", "住址4"); dataTable.Rows.Add("用户5", "5岁", "住址5"); //转置table var dvgTable = DataTableRowConvertToColumn(dataTable); magicDataGridView1.DataSource = dvgTable; } DataTable DataTableRowConvertToColumn(DataTable dataTable) { var dvgTable = new DataTable(); dvgTable.Columns.Add("列名"); for (int i = 1; i <= dataTable.Rows.Count; i++) { dvgTable.Columns.Add(i.ToString()); } for (int i = 0; i < dataTable.Columns.Count; i++) { object[] obj = new object[dataTable.Rows.Count + 1]; obj[0] = dataTable.Columns[i].ColumnName; for (int j = 1; j <= dataTable.Rows.Count; j++) { obj[j] = dataTable.Rows[j - 1][i]; } dvgTable.Rows.Add(obj); } return dvgTable; }
加载全部内容