我遇到一个问题,当用户点击浏览器上的后退按钮时,事件会意外触发。以下是步骤。
我想知道为什么会这样。我查看了asp.net的页面生命周期,并关闭了页面的缓存,但我无法解释。
如果需要更多信息,请与我们联系。谢谢!
更新:看起来按钮点击事件只会在用户点击Chrome时触发
ASPX
<asp:Button ID="btnNewSurvey" runat="server" Text="New Survey" OnClick="btnNewSurvey_Click" />
aspx.cs
protected void btnNewSurvey_Click(object sender, EventArgs e)
{
rwScreenList.VisibleOnPageLoad = true;
rwScreenList.Visible = true;
ListBox lbox = rwScreenList.ContentContainer.FindControl("lboxScreenSelection") as ListBox;
((Label)rwScreenList.ContentContainer.FindControl("lblScreenError")).Text = "";
lbox.DataSource = DatabaseFactory.GetScreensForProject(ProjectId);
lbox.DataBind();
}
问题是当用户从另一个页面返回时调用此事件。
答案 0 :(得分:0)
问题似乎出现在rwScreenList.VisibleOnPageLoad = true;
我看到这是telerik属性,当你使用这个属性时,你需要经历某些事情。
你也可以这样做:
rwScreenList.VisibleOnPageLoad = !Page.IsPostBack;
请参阅以下讨论,以帮助您解决问题。