Asp.net动态下拉列表

时间:2011-10-07 14:42:21

标签: c# asp.net drop-down-menu viewstate

我想在ASP.NET中创建动态DropDownList,但在回发后DropDownList会丢失所选值。在回发时重新创建控件无效(ViewState,相同的ID)。

我想知道DropDownList的ViewState是否不起作用。我之前创建了动态TextBox,它们在回发后保留了值。

我正在考虑从本文中的表单帖子中获取值:

http://www.aspsnippets.com/Articles/Creating-Dynamic-DropDownList-Controls-in-ASP.Net.aspx

这是解决这个问题的常见方法吗?

2 个答案:

答案 0 :(得分:4)

如果不是,则应在Init上动态创建下拉列表,然后在Load上或之后读取/写入其属性。看一下这篇文章:http://www.4guysfromrolla.com/articles/092904-1.aspx,它更详细地描述了它。

答案 1 :(得分:0)

您必须在加载ViewState之前重新创建控件,例如在OnInitOnPreInit期间。每次回发页面时,您还需要为控件分配相同的ID,因为ViewState使用控件ID重新加载值。