public DataTable GetReverseTable(DataTable p_Table) { DataTable _Table = new DataTable(); for (int i = 1; i != p_Table.Rows.Count + 1; i++) { if (i == p_Table.Rows.Count) { _Table.Columns.Add(i.ToString() ); } else { _Table.Columns.Add(i.ToString()); } } for (int i = 0; i != p_Table.Columns.Count; i++) { object[] _ObjectValue = new object[p_Table.Rows.Count]; //_ObjectValue[0] = p_Table.Columns[i].ColumnName; for (int z = 0; z != p_Table.Rows.Count; z++) { _ObjectValue[z] = p_Table.Rows[z][i]; } _Table.Rows.Add(_ObjectValue); } return _Table; }