我正在使用会话对象根据用户操作存储成功/错误消息。
在每个回发上,消息在ItemCommend上设置,并在母版页的Page_Load上检索。检索后,将从会话中删除该消息。
问题是在调用ItemCommand之前调用母版页的Page_Load,因此在下次刷新或回发之前消息不会显示。
这种情况通常如何处理?还有其他一些我们可以编码的事件吗?
答案 0 :(得分:2)
这是aspx和母版页的正常行为。首先,在Master Page的页面加载被激活然后所有其他点击等之后,内容页面的页面加载被触发。
您可以使用PageLoad Complete事件来解决您的问题。
答案 1 :(得分:1)
这是正常行为。在itemcommand
或Page_prerender
答案 2 :(得分:0)
在您的母版页的代码后面创建一个公共方法,如下所示:
public void Set_Value(String SessionValue)
{
//your code here
}
在您的内容页面的aspx文件中,使用以下代码行:
<%@ MasterType VirtualPath="~/MasterPage.master" %>
现在,在您的内容页面的代码隐藏中,您可以轻松地在任何控件的Item事件中调用Master Page的方法。在Master Page的方法中,您可以编写所需的代码来更新和显示值。
在内容页面上调用母版页的方法像这样:
this.Master.Set_Value(Session["abc"].ToString());