如题,是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.   

    1、testTD.Width = new System.Web.UI.WebControls.Unit(testTD.Width.Value*15/100);2、比方说你要把testTable加到div里,div的id是div1,并且div1的runat="server"
    则代码可以这样写
    Table testTable = new Table();
    div1.Controls.Add(testTable);
      

  2.   

    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);
      

  3.   

    这个Table是你自己定义的类吗?
      

  4.   

    public class Table : EngineObjectBase, IDisposable
      

  5.   

    你所说的table是html元素,最好在页面代码中定义好。
    不知道你现在显示数据列表是用什么控件,我就拿asp:repeater来说。<asp:Repeater runat="server" ID="rep">
    <ItemTemplate>
    <table>
    <tr><td></td></tr></table>
    </ItemTemplate></asp:Repeater>你在后台查询出数据,然后绑定这个rep,有多少条数据他就会根据ItemTemplate中的元素来产生相应的html,也就是你说的table