将DataRow转换为tableow

本文关键字:tableow 转换 DataRow | 更新日期: 2023-09-27 18:04:09

很简单。找不到一个简单的解决办法。不确定这是不是一个简单的解决方案?:/

我有一个dataTable。我想要实现这个…

DataTable dt = new DataTable();
dataAdapter.Fill(dt);
TableRow tr = new TableRow();
tr = dt.Rows[0];

但是我不能从DataRow转换到tableow !

帮助!

亚历克斯

将DataRow转换为tableow

TableRow是一个UI元素,它代表Table控件中的一行)。DataRow是一个数据元素,它表示DataTable中的一行数据。你不能像这样在两者之间转换,因为它们是完全不同的野兽。

如果你希望使用UI,那么你应该将Table控件绑定到DataTable。然后,您可以拉出单个TableRow对象。

你想干什么?

如果您的目标是在UI上显示数据表(或任何其他数据源)中的数据,为什么不使用中继器呢?

无论如何,你不能仅仅把DataTableRow转换为TableRow但你必须自己做。看看下面的代码

private void GenerateTable()
    {
        DataTable dt = CreateDataTable();
        Table table = new Table();
        TableRow row = null;

        //Add the Headers
        row = new TableRow();
        for (int j = 0; j < dt.Columns.Count; j++)
        {
            TableHeaderCell headerCell = new TableHeaderCell();
            headerCell.Text = dt.Columns[j].ColumnName;
            row.Cells.Add(headerCell);
        }
        table.Rows.Add(row);

        //Add the Column values
        for (int i = 0; i < dt.Rows.Count; i++)
        {
            row = new TableRow();
            for (int j = 0; j < dt.Columns.Count; j++)
            {
                TableCell cell = new TableCell();
                cell.Text = dt.Rows[i][j].ToString();
                row.Cells.Add(cell);
            }
            // Add the TableRow to the Table
            table.Rows.Add(row);
        }
        // Add the the Table in the Form
        form1.Controls.Add(table);
    }
源:

http://geekswithblogs.net/dotNETvinz/archive/2009/06/24/fill-asp.net-table-with-data-from-datatable.aspx

你可以使用

TableRow = new TableRow();

    tr .Cells(0).Text = dt.Rows[0][0];

因为TabeRow有很多单元格,你必须指定一个单元格。

没有办法将整个数据row添加到TableRow中。