呈现内容页后在母版页上激发的事件



我有一个要求,只有在内容页面设置了页面标题后,我才需要将页面标题的值传递给Facebook共享插件。在一些页面(动态数据页面)中,页面标题是根据特定控件的PreRender事件设置的(我无法更改这一点)。

如果我在母版页的PreRender上传递内容页标题,它将返回未设置的值,因为在内容页的控件PreRender之前激发母版页PreRender。我尝试在母版页的Unload事件中传递该值,但没有成功!我该如何做到这一点?

因此,这个问题可以概括为,在内容页完成所有任务并准备卸载后,在母版页上执行一些操作。

有没有一种方法可以在母版页本身中做到这一点,或者我必须在单独的页面中这样做?

参考:ASP.NET母版和内容页中的事件

动态数据页面:

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);
}

使用页面卸载事件执行最终清理,如关闭文件、释放内存等。如果在此处设置页面标题,则不会呈现。。。。您必须设置标题控制预呈现事件本身。。。

相关内容

  • 没有找到相关文章

最新更新