2014-02-14 10 views
0

我试图在回调(devexpress callbackpanel)中动态更新我的RadioButtonListRadioButtonList在回调中没有正确更新

当我运行以下它确实工作,但它不会追加。它似乎取代RadioButtonList中的最后一项。

* 注意emailRadioListPage_Load(!IsCallback)有条件的填充。

protected void ClbkAddEmail(object source, CallbackEventArgsBase e) 
{ 


    ListItem newEmail = new ListItem(tbAddEmail.Value.ToString(), result.ToString()); 
    emailRadioList.Items.Add(newEmail); 

} 

该回调会将一个项目添加到单选按钮列表中,并且只能在以后进行替换。

例如:

(开始)
- 收音机1
- 第二广播电台
- radio3

(第一回调)
- 收音机1
- 第二广播电台
- radio3
- radio4

(二调)
- 收音机1
- 第二广播电台
- radio3
- radio5

+0

ViewState应该处于其默认设置。我没有处理它。 viewstate将如何提供帮助?对不起,我是新来asp.net –

+0

我看到的问题是您的RBL重新绑定在每一个回发。将您的RBL DataBinding代码放在if(!Page.IsPostBack){}块中 – gbs

回答

0

的代码是由看起来不错,但你需要存储的新按钮数据在哪里。发生的事情是“新电子邮件”正在被新数据取代。在处理此代码时,程序没有地方存储旧的“newEmail”,所以它将替换值并替换实例。我建议将新的收音机添加到数据库中,然后用foreach语句回顾它们。