一个还没有明白的机理的问题。


页面代码:
        <asp:Table ID="Table1" runat="server">
        <asp:TableRow>
        <asp:TableCell ID="tcell01">
        <div id="test1">test1</div>
        </asp:TableCell>
        <asp:TableCell ID="tcell02">
        <div id="test2">test2</div>
        </asp:TableCell>
        </asp:TableRow>
        </asp:Table>
当page_load执行下面操作的时候
            Label oneLabel = new Label();
            oneLabel.ID = "oneLabel";
            oneLabel.Text = "oneLabel";
            tcell01.Controls.Add(oneLabel);
即:当向tcell01添加控件的时候,test1消失,test2还在。


不知道是什么原因,我的分析是:
如果Page_load的时候,tcell01里面已经有test1了,那么tcell01只是add一个控件,test1应该还存在吧。
如果Page_load的时候,tcell01里面还没有test1,那为什么不执行tcell01.Controls.Add(oneLabel)时,
tcell01却是存在的,这是否说明,pageLoad以后,test1才加入到了tcell01,也就是说,test1应该在添加的oneLabel后面,可是实际上却不是这样,而是test1消失了。
也就是说执行tcell01.Controls.Add(oneLabel)的时候,test1消失了,不执行的话,test1存在,现在搞不清这里的add到底是添加,还是替换了。所以比较头大,这还是一个没有弄清楚的问题。
这说明我对asp.net的后台流程还是没有搞清楚。
如果哪位大虾飘过,请留下个解释。

posted @ 2007-12-05 12:38  Sangplus  阅读(203)  评论(0编辑  收藏  举报