亲宝软件园·资讯

展开

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;
        }

加载全部内容

相关教程
猜你喜欢
用户评论