[英]Which event is fired on master page after content pages have rendered
我有一个要求,只有在内容页面设置了页面标题之后,才需要将页面标题的值传递给Facebook共享插件。 有几个页面(动态数据页面)在特定控件的PreRender
事件上设置了页面标题(我无法更改此设置)。
如果我在母版页的PreRender
上传递内容页标题,则它将返回未设置的值,因为在内容页的控件PreRender
之前会PreRender
母版页的PreRender
。 我尝试在母版页的Unload
事件中传递值,但是它不起作用! 我该如何实现?
因此,问题可以概括为:在内容页面执行完所有任务并准备卸载之后,在母版页面上执行某些操作。
有没有办法在母版页本身中执行此操作,还是我必须在各个页面中执行此操作?
动态数据页:
string Location = null;
protected void DynamicFilter_PreRender(object sender, EventArgs e)
{
DynamicFilter Filter = (DynamicFilter)sender;
MetaColumn metaColumn = table.GetColumn(Filter.DataField);
QueryableFilterUserControl fuc1 = Filter.FilterTemplate as ForeignKeyFilter;
if (fuc1 != null && fuc1.FilterControl != null)
{
DropDownList ddl = fuc1.FindControl("DropDownList1") as DropDownList;
if (ddl != null)
{
if (metaColumn.DisplayName == "Location")
{
if (ddl.SelectedIndex != 0)
{
Location = ddl.SelectedItem.Text;
}
}
}
}
if (Location != null)
{
// set the page title based on the location
Page.Title = String.Format("Recent {0} Fares", Location);
}
}
此功能设置内容页面的(动态数据页面)标题。 现在,仅在设置好标题后,我才需要在我的主页上访问它。
母版页:
protected void Page_Load(object sender, EventArgs e)
{
// pass the value of page title to SocialNetworkingHelper class to do some work
SocialNetworkingHelper.SetSocialMediaMetaTag(this.Page, this.Page.Title);
}
使用页面卸载事件执行最终清理,如关闭文件,释放内存等...如果在此处设置页面标题,将不会呈现....您必须在控件预渲染事件本身上设置标题...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.