4

我使用 asp 在客户的网页中创建了一个表:

<asp:Table ID="Table1"  GridLines="Both" 
    HorizontalAlign="Center" 
    BorderWidth="2"
    Font-Bold="True"
    Font-Names="Verdana" 
    Font-Size="8pt" 
    CellPadding="15" 
    CellSpacing="0" runat="server">
 </asp:Table>

使用我创建的按钮,我使用数组填充表格:

for (int j=0; j < cells; j++)
{          
    TableRow r = new TableRow();
    for (int i = 0; i < row+1; i++)
    {
        TableCell c = new TableCell();
        c.Controls.Add(new LiteralControl (datar[j,i].ToString()));
        r.Cells.Add(c);
    }
    Table1.Rows.Add(r);
}

此代码可以很好地填充表格。现在我必须创建另一个按钮来将表格发送到 Excel。有谁知道如何做到这一点,或者如何从表中读取数据并发送回另一个数组?

用户必须决定是否要将表中的数据保存到 Excel,这就是为什么要创建第二个按钮“保存信息”,按钮一个用于显示信息

4

1 回答 1

1

尝试这个。我不能 100% 保证这一点,因为我没有一个充满信息的实际表格来测试它,但无论如何都要试试这个。

    Table t = new Table();

    List<string> cells = new List<string>();
    foreach (TableRow r in t.Rows)
    {
        foreach (TableCell cell in r.Cells)
        {
            cells.Add(cell.ToString());
        }
    }

    String[] array = cells.ToArray();

这假设我们不必在开始将东西放入其中之前定义一个固定的数组,所以为了避免这种情况,我简单地创建了一个数组并将列表转换为一个。这在编程上很慢。要事先获取数组大小,只需将 String[TableWidth * TableHeight] 相乘,您将获得一个大小正确的固定数组。

于 2012-07-03T18:56:31.277 回答