最近要做一个数据导出到Word功能,但是需要生成表格,最重要的是表格的格式不是固定滴,
如果用string一个个的拼,可费死劲了。然后和同事商量,得出解决的方法。
string拼接方法:
1
private string CreateTable(string something)
2
{
3
string str = "<table><tr><td><td>" + something + "</tr></table>";
4
}

2



3

4

当然上面的方法你可以传入更多的参数来控制表的行数和列数,但是控制起来很麻烦。
控件绘制方法:
1
2
private string CreateTable(string something)
3
{
4
HtmlTable ht = new HtmlTable();
5
ht.Style.Add("border-collapse", "collapse");
6
ht.CellSpacing = 0;
7
8
HtmlTableRow tr = new HtmlTableRow();
9
10
HtmlTableCell tc = new HtmlTableCell();
11
tc.Style.Add(HtmlTextWriterStyle.Width, "70px");
12
tc.Style.Add(HtmlTextWriterStyle.TextAlign, "center");
13
tc.Style.Add("border", "#000 1px solid");
14
15
tr.Cells.Add(tc);
16
17
ht.Rows.Add(tr);
18
19
StringWriter sw = new StringWriter();
20
Html32TextWriter htw = new Html32TextWriter(sw);
21
ht.RenderControl(htw);
22
23
return sw.ToString();
24
}

2

3



4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

这时,sw就是ht的页面输出形式。