Buscando con el maestro google encontre este codigo que me permite mantener el scroll en un gridlayout panel (Div)
esto como se logra creando un Js con este codigo
Código:
var __oScrollPos;
window.onload=InitScrollPos;
function InitScrollPos(){
__oScrollPos = document.all['__SCROLLPOSITIONS'];
if (__oScrollPos!=undefined){
LoadScrollPos();
basePostBack = __doPostBack;
__doPostBack = MyPostBack;
document.forms[0].onsubmit = MyPostBackFrm;
}
}
function MyPostBackFrm(){
SaveScrollPos();
document.forms[0].submit();
}
function MyPostBack(eventTarget, eventArgument){
SaveScrollPos();
basePostBack(eventTarget, eventArgument);
}
function SaveScrollPos(){
var oNodeList = document.body.getElementsByTagName('DIV');
var sPos = '';
for (i=0;i<oNodeList.length;i++){
oDiv = oNodeList[i];
if (oDiv.scrollTop>0) {
if (sPos.length>0) sPos = sPos + ',';
sPos=sPos + oDiv.id + ':' + oDiv.scrollTop;
}
}
__oScrollPos.value=sPos;
}
function LoadScrollPos(){
if (__oScrollPos.value=='') return;
var sPos = new String();
sPos = __oScrollPos.value
sItems = sPos.split(',');
for (i=0;i<sItems.length;i++){
var sItem = new String();
sItem = sItems[i];
var iSplit = sItem.indexOf(":",0);
sDiv = sItem.substring(0,iSplit);
sPos = sItem.substring(iSplit+1,sItem.length);
try {
document.all[sDiv].scrollTop=sPos;
} catch(e) { }
}
}
y en el load de la pagina colocas lo siguiente
Código:
RegisterStartupScript("ScrollPositions", "<script language=javascript src='Nombreyruta.js'></script>")
RegisterHiddenField("__SCROLLPOSITIONS", Request("__SCROLLPOSITIONS"))
Espero que este codigo les sea de utilidad a todos