我有一个像这样定义的DropDownList:
<td>
<asp:DropDownList ID="campagnes" runat="server" AutoPostBack="true" EnableViewState="true" OnSelectedIndexChanged="campagnes_SelectedIndexChanged"></asp:DropDownList>
</td>
我正在Page_Load里面填充DropDownList!Page.IsPostBack检查。
每当我尝试选择其中一个项目时,它将加载页面并重置所选索引。
如果在页面加载后如何保存所选索引?
答案 0 :(得分:0)
您可能在Page_Load
campagnes.DataSource = somelist;
campagnes.DataBind();
确保将其放入
if(!Page.IsPostBack)
{
campagnes.DataSource = somelist;
campagnes.DataBind();
}
这将确保下拉列表仅与数据绑定一次。
当您触发方法时,Page_Load
会在实际的SelectedItemChanged
事件被触发之前被调用,这会导致数据再次被绑定。