/// <summary>
    /// PreRender event handler.
    /// </summary>
    protected override void OnPreRender(EventArgs e)
    {
        if (!RequestHelper.IsPostBack())
        {
            // Raise return handler on the first load when this page is a part of a layout template (i.e. horizontal tabs). Solves redirection issues from "New" to "Edit" pages.
            bool raiseReturnHandler = (IsDialog && !String.IsNullOrEmpty(ReturnHandler) && (UIContext.UIElement != null) && (RootElementID != UIContext.UIElement.ElementID));

            if (QueryHelper.GetBoolean("saved", false) || raiseReturnHandler)
            {
                // Raise javascript "after save" hander
                RaiseReturnHandler();
            }
        }

        if (dnChanged)
        {
            if (UIContext.UIElement != null)
            {
                // Don't call refresh for top dialog element
                bool topDialog = (IsDialog && (UIContext.UIElement.ElementID == UIContext.RootElementID));
                if (!topDialog)
                {
                    // Check for layout in parent tab
                    var ui = UIElementInfoProvider.GetUIElementInfo(UIContext.UIElement.ElementParentID);
                    if (UIContextHelper.ElementIsLayout(ui))
                    {
                        var name = UIContextHelper.GetObjectBreadcrumbsText(UIContext, EditForm.EditedObject);

                        ScriptHelper.RefreshTabHeader(Page, name);
                    }
                }
            }
        }

        base.OnPreRender(e);
    }