0

我已经看到建议我在 if(!IsPostback) 块中填充列表的帖子。

但是,我只生成下拉列表以响应回发,所以我认为这对我不起作用。

我目前所做的是将下拉列表数据绑定到Page_Init. 但是,当我使用“检查元素”在进行新选择后检查列表(因此触发了自动回发)时,我看到列表中的第一项始终是“选中的”。

请让我知道如何通过回发保持选择。

4

1 回答 1

1

如果您在 Page_Init 中绑定控件,那么您将失去您的选择。不要那样做。

绑定一次控件,ViewState 会保留控件数据。But when the selection changes, that will be sent to the server, and the SelectedIndexChangedevent will fire.


更一般地说,在阶段之前在控件上设置的任何属性Render都将保存在 ViewState 中。在下一次 PostBack 时,控件将加载 ViewState 的内容,因此将自身恢复到 PostBack 之前的状态。

然后,控件将记录在 PostBack 上发送的任何 POST 值。这包括对选择、文本框内容等的更改。该控件将触发适当的something Changed 事件,以指示 ViewState 的先前状态发生了更改。

于 2013-01-18T03:26:36.043 回答