在回发时以编程方式添加控件

cll*_*pse 2 c# asp.net viewstate

回发:如何在我的代码隐藏文件中访问ASP.NET控件,这些文件是以编程方式添加的?

我将一个CheckBox控件添加到占位符控件:

PlaceHolder.Controls.Add(new CheckBox { ID = "findme" });
Run Code Online (Sandbox Code Playgroud)

Request.Form.AllKeys除了我以编程方式添加的控件外,ASPX文件中添加的控件显示正常.我究竟做错了什么?

在控件上启用ViewState没有用.如果只是那么简单:)

ika*_*ika 5

您应该在回发时重新创建动态控件:

protected override void OnInit(EventArgs e)
{

    string dynamicControlId = "MyControl";

    TextBox textBox = new TextBox {ID = dynamicControlId};
    placeHolder.Controls.Add(textBox);
}
Run Code Online (Sandbox Code Playgroud)