回发后动态控件消失

时间:2013-03-22 01:27:11

标签: asp.net dynamic user-controls postback pageload

我有很多动态创建的控件。运行代码的最佳位置在哪里?

我一直在Page_Load上运行CreateControls函数(以创建所有控件)。

现在的问题是,当我取消选中/取消选中一个特定的动态复选框控件(autopostback = true)时,复选框始终设置为“true”,因为CreateControls函数在回发时再次在Page_Load上运行。

如果我将CreateControls函数放在Page_Load的(!IsPostBack)中,当我点击动态复选框控件时,所有控件都会消失。

我已经看了几天,任何想法都赞赏了!

编辑:CreateControls函数将所有控件绑定到Panel。

1 个答案:

答案 0 :(得分:4)

尝试在Page_Init方法而不是Page_Load中调用CreateControls方法... Init事件在表单值绑定到控件之前触发,因此您的默认值将被覆盖用正确的数据。