Pregunta

Estoy utilizando asp.net con C # en mi página aspx tengo un panel de actualización en este panel tengo algunos enlaces a otros sitios, que está abierto en la misma ventana. después de hacer clic en estos enlaces mí cuando estoy consiguiendo de nuevo a través del botón de retroceso del navegador no estoy recibiendo los mismos resultados en el panel de actualización ...

¿Fue útil?

Solución

Tengo aplicar lo mismo con el siguiente artículo, si usted necesita ayuda adicional, PLZ me dejó saber, proporcionaré los pedazos de código

http://rchern.wordpress.com/ 2008/05/11 / UpdatePanel-backforward-navegador-navegación /

En primer lugar tiene que habilitar la historia ScriptManager EnableHistory = "true"
En este ejemplo estamos maintaing paginación gridview, Cuando el navegador usuario de nuevo el botón Hay que añadir punto de la historia después de que su página se carga por primera vez.

private void AddHistoryPoint(String key, String value, String tile)
{
    ScriptManager scm = ScriptManager.GetCurrent(this.Page);
    if ((scm.IsInAsyncPostBack == true) && (scm.IsNavigating != true))
    {
        if (pageState == null)
        {
           NameValueCollection pageState = new NameValueCollection();
        }
        if (pageState[key] != null)
        {
            pageState[key] = value;
        }
        else
        {
            pageState.Add(key, value);
        }
        scm.AddHistoryPoint(pageState, tile);
    }
}

protected void grid_PageIndexChanged1(object sender, EventArgs e)
{
    AddHistoryPoint("pi", grdProject.PageIndex.ToString(), "Page Index- " + (grdProject.PageIndex + 1).ToString());
}


aquí se tiene que manejar ScriptManager Navegar Evento

     protected void ScriptManager1_Navigate(object sender, System.Web.UI.HistoryEventArgs e)
{
    if (e.State != null)
    {
        if (e.State["pi"] != null)
        {
            grid.PageIndex = Convert.ToInt32(e.State["pi"]);
        }
    }
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top