我有一个转发器控件,可以从数据库中提取一些数据,并为与每行相关的值创建一个radiobuttonlist。我不知道会有多少行会回来,所以我不知道会有多少个无线电频率列表。此转发器位于表单内部,一旦我单击表单上的“提交”,我需要从转发器生成的单选按钮中获取值。
关于如何做到这一点的任何想法?
答案 0 :(得分:4)
有几个选择。
一种是使用nested Repeater来显示RadioButtons。
另一种是在原始中继器中创建控件。 Repeater.ItemDataBound事件。
在任何一种情况下,您都需要非常了解Page Lifecycle。
除非使用if(!Page.IsPostback)
块进行数据绑定,否则您希望避免在Page_Load事件中进行数据绑定。如果您未检查回发,则会遇到Page_Load调用DataBind()调用的问题,然后在任何事件处理程序可以使用它之前擦除转发器的值。
或者,您可以在Page_Init中进行绑定,这可以在应用视图状态之前进行,因此您不会丢失您的值。
您还可以对RadioButtons使用USer控件。之前的帖子介绍了如何在Repeater here中使用nexsted用户控件。