日期:2014-05-18  浏览次数:21129 次

如何用C#新建一个Table ,不是DataTable 。
如题,是Table,不是DataTable 。

我是个新手,工作时间不长,之前有两个C/S的项目经验,这是第一次做B/S。

有个需求大概就是需要自动显示历史记录的详细信息,嫌Grid显示历史记录看着不方便,由于历史记录数量有限,所以准备根据历史记录的数量用代码自动创建n个Table按照指定的样式显示在指定的位置。

自己试了试,有些问题:

1、 比如如何设置某个单元格的宽度,假设我写 testTD.Width = testTable.Width * 15/100;
  就会报错:Cannot implicitly convert type 'double' to 'System.Web.UI.WebControls.Unit'. 
  Unit应该就是前台画Table时设定的像素px吧? 但是C#中不知道该怎么去写。

2、 再比如实例化了一个Table testTable = new Table();怎么设定testTable要显示在哪个位置啊,有没有什么属性可以设置它的父控件?或者别的办法能指定table的位置的。testTable.Parent是只读的。


// 冰天雪地鬼哭狼嚎三百六十度大回旋跪求一解

------解决方案--------------------
1、testTD.Width = new System.Web.UI.WebControls.Unit(testTable.Width.Value * 15/100);

2、比方说testTable要加到某个div里,div必须runat="server",假设id为div1,那么代码可以这样写
Table testTable = new Table();
div1.Controls.Add(testTable);