我使用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.有谁知道如何做到这一点,或如何从表中读取数据并发送回另一个数组?
解决方法
试试这个.我不能保证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]相乘即可得到正确大小的固定数组.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。