Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 如何在表中加载用户控件_Asp.net - Fatal编程技术网

Asp.net 如何在表中加载用户控件

Asp.net 如何在表中加载用户控件,asp.net,Asp.net,我想在每次按下按钮时将usercontrl添加到表控件, 我已经在Click事件中完成了这段代码,我在第一次单击中获得了控件,但在此之后 控制不起作用,有人能提出解决方案吗? 谢谢 无论何时,只要将控件动态添加到控件集合中,回发时就必须将该控件重新添加到控件树中。因此,所有较旧的用户控件都需要在page init上重新添加。另外,我强烈建议不要使用会话来存储对表行的引用;如果将表行重新添加到表中,viewstate将重新加载其中的数据。Session.add((Session.Count+1.T

我想在每次按下按钮时将usercontrl添加到表控件, 我已经在Click事件中完成了这段代码,我在第一次单击中获得了控件,但在此之后 控制不起作用,有人能提出解决方案吗? 谢谢


无论何时,只要将控件动态添加到控件集合中,回发时就必须将该控件重新添加到控件树中。因此,所有较旧的用户控件都需要在page init上重新添加。另外,我强烈建议不要使用会话来存储对表行的引用;如果将表行重新添加到表中,viewstate将重新加载其中的数据。

Session.add((Session.Count+1.ToString(),tr);)的作用是什么??其中是在第页添加表1的代码。将其置于pre_init中,以便其视图状态在加载时可用Table1在设计时添加,而不是通过代码,每次Rows.count递增,但在页面上无效如果(Session[“tbl”!=null){Table1=(Table1)Session[“tbl”];},请尝试将此代码置于加载事件中同样的事情也发生在加载事件中,如果您可以发布所有加载事件,这将是完全有帮助的
if (Session["tbl"] == null)
    {
        Session["tbl"] = Table1;
    }
    else
    {
        Table1 = (Table)Session["tbl"];
    }
    TimeSheetRow tr= LoadControl ("TimeSheetRow.ascx") as TimeSheetRow ;
    tr.ID = "tr" + Table1.Rows.Count;


Session.Add((Session.Count + 1).ToString(), tr);



    Table1.Rows.Add(new TableRow());
    Table1.Rows[Table1.Rows.Count -1].Cells.Add(new TableCell());
    Table1.Rows[Table1.Rows.Count - 1].Cells[0].Controls.Add(tr);


    Session["tbl"] = Table1;