2009-12-14 59 views
0

我正在创建动态标签和文本框,这个动态标签和文本框是根据数据库中下拉列表中所选项目的值数量创建的。然后动态标签将具有名称和带有值的文本框。使用Page_init事件保留这些控件的值。所以即时通讯使用缓存来保存下拉列表中的selectteditem。动态添加ASP.NET Web窗体控件在页面刷新时丢失状态

问题:过程进行得很好。但是,如果我尝试刷新页面没有项目在下拉列表中选择,但缓存不清楚,所以使用此缓存值动态控制正在创建。

+0

可能是您的视图状态的概率... – 2009-12-14 10:40:45

+0

尝试enableViewState =“false” – 2009-12-14 10:42:35

回答

1

不幸的是,动态添加的控件不会保留,因此您必须在每次页面加载时添加它们。因此,您将不得不从数据库重新加载,或者存储控件的总数,并使用页面init中的索引重新创建。 ViewState将被重新加载到这些控件中以保留以前的值。

这只是不幸的是,你必须做这项工作,但动态控制就是这种情况。作为替代方案,您可以使用中继器,该中继器会保留与其绑定的项目列表。

HTH。

相关问题