动态创建的 asp.net 控件在回发后消失

Posted

技术标签:

【中文标题】动态创建的 asp.net 控件在回发后消失【英文标题】:Dynamically created asp.net controls disappear after post back 【发布时间】:2018-09-28 05:27:40 【问题描述】:

我有一个 asp.net 网页,我需要在其中创建动态控件,如文本框、组合框、标签等。

创建这些字段后,如果页面回发发生,所有动态创建的控件都会消失。

我正在为组合框下拉选择的索引更改事件创建动态控件。所以也不能在页面初始化上创建。

有什么办法可以解决这个问题吗?

【问题讨论】:

您需要跟踪所有控件并在 PostBack (demo) 上重新创建它们 【参考方案1】:

为了跨 PostBacks 保留动态控件,您需要利用 Page 的 PreInit 事件重新创建动态控件。

这可能会对您有所帮助: https://www.aspsnippets.com/Articles/ASPNet-Persist-Dynamic-Controls-Dynamic-Controls-disappear-after-PostBack-in-ASPNet.aspx

【讨论】:

以上是关于动态创建的 asp.net 控件在回发后消失的主要内容,如果未能解决你的问题,请参考以下文章

文本框文本在回发后消失

Error-ASP.NET:由于未能找到 id 为“FileUpload1$gvFiles$ctl02$lnkBtnRemoveFile”的控件或在回发后将同一 ID 分配给另一个控件,导致发生错误。

更新面板内的jquery datepicker在回发后消失

RadDatePicker 和 RadTimePicker 在回发后失去样式

在回发后重新选择

回发后 DataList 的 ASP.NET / DataItem 为空